[INFO] cloning repository https://github.com/BurntNail/knot
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/BurntNail/knot" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBurntNail%2Fknot", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBurntNail%2Fknot'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] b66029f61df1cfc7ee5ded0954c134250a4f2fa4
[INFO] fixing BurntNail/knot against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBurntNail%2Fknot" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/BurntNail/knot
[INFO] finished tweaking git repo https://github.com/BurntNail/knot
[INFO] tweaked toml for git repo https://github.com/BurntNail/knot written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/BurntNail/knot on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/BurntNail/knot already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] ddbc00aaea9f3cc94d1ee1ab4bba0a1bbc31d8218397230221759cc26bc36017
[INFO] running `Command { std: "docker" "start" "ddbc00aaea9f3cc94d1ee1ab4bba0a1bbc31d8218397230221759cc26bc36017", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "ddbc00aaea9f3cc94d1ee1ab4bba0a1bbc31d8218397230221759cc26bc36017" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ddbc00aaea9f3cc94d1ee1ab4bba0a1bbc31d8218397230221759cc26bc36017", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "ddbc00aaea9f3cc94d1ee1ab4bba0a1bbc31d8218397230221759cc26bc36017" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Compiling proc-macro2 v1.0.86
[INFO] [stderr]    Compiling libc v0.2.158
[INFO] [stderr]    Compiling serde v1.0.209
[INFO] [stderr]     Checking memchr v2.7.4
[INFO] [stderr]     Checking futures-core v0.3.30
[INFO] [stderr]     Checking bytes v1.7.1
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling ahash v0.8.11
[INFO] [stderr]     Checking futures-io v0.3.30
[INFO] [stderr]     Checking futures-sink v0.3.30
[INFO] [stderr]     Checking futures-task v0.3.30
[INFO] [stderr]     Checking tracing-core v0.1.32
[INFO] [stderr]    Compiling pkg-config v0.3.30
[INFO] [stderr]     Checking allocator-api2 v0.2.18
[INFO] [stderr]    Compiling serde_json v1.0.127
[INFO] [stderr]     Checking generic-array v0.14.7
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]    Compiling num-conv v0.1.0
[INFO] [stderr]     Checking futures-channel v0.3.30
[INFO] [stderr]    Compiling time-macros v0.2.18
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]    Compiling httparse v1.9.4
[INFO] [stderr]     Checking http v1.1.0
[INFO] [stderr]    Compiling crunchy v0.2.2
[INFO] [stderr]     Checking spin v0.9.8
[INFO] [stderr]    Compiling tiny-keccak v2.0.2
[INFO] [stderr]     Checking parking v2.2.0
[INFO] [stderr]     Checking concurrent-queue v2.5.0
[INFO] [stderr]     Checking unicode-bidi v0.3.15
[INFO] [stderr]    Compiling jobserver v0.1.32
[INFO] [stderr]    Compiling getrandom v0.2.15
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]     Checking event-listener v5.3.1
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling unicase v2.7.0
[INFO] [stderr]    Compiling pin-project-lite v0.2.14
[INFO] [stderr]    Compiling quote v1.0.36
[INFO] [stderr]    Compiling cc v1.1.13
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]     Checking socket2 v0.5.7
[INFO] [stderr]     Checking signal-hook-registry v1.4.2
[INFO] [stderr]     Checking mio v1.0.2
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking rustls-pki-types v1.8.0
[INFO] [stderr]    Compiling openssl v0.10.66
[INFO] [stderr]    Compiling tinyvec_macros v0.1.1
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]    Compiling crossbeam-utils v0.8.20
[INFO] [stderr]    Compiling tinyvec v1.8.0
[INFO] [stderr]    Compiling syn v2.0.75
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling const-random-macro v0.1.16
[INFO] [stderr]     Checking idna v0.5.0
[INFO] [stderr]    Compiling axum-core v0.4.3
[INFO] [stderr]    Compiling rkyv v0.7.45
[INFO] [stderr]    Compiling native-tls v0.2.12
[INFO] [stderr]    Compiling ucd-trie v0.1.6
[INFO] [stderr]     Checking cpufeatures v0.2.13
[INFO] [stderr]    Compiling phf_shared v0.11.2
[INFO] [stderr]     Checking nom v7.1.3
[INFO] [stderr]     Checking const-random v0.1.18
[INFO] [stderr]     Checking url v2.5.2
[INFO] [stderr]     Checking sync_wrapper v0.1.2
[INFO] [stderr]    Compiling regex-syntax v0.8.4
[INFO] [stderr]    Compiling untrusted v0.9.0
[INFO] [stderr]     Checking seahash v4.1.0
[INFO] [stderr]     Checking dlv-list v0.5.2
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]     Checking crc-catalog v2.4.0
[INFO] [stderr]    Compiling rustls v0.23.12
[INFO] [stderr]    Compiling percent-encoding v2.3.1
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]     Checking crc v3.2.1
[INFO] [stderr]    Compiling form_urlencoded v1.2.1
[INFO] [stderr]     Checking event-listener-strategy v0.5.2
[INFO] [stderr]     Checking inout v0.1.3
[INFO] [stderr]    Compiling unicode-normalization v0.1.23
[INFO] [stderr]     Checking aho-corasick v1.1.3
[INFO] [stderr]     Checking fastrand v2.1.0
[INFO] [stderr]    Compiling pin-utils v0.1.0
[INFO] [stderr]    Compiling base64 v0.22.1
[INFO] [stderr]    Compiling rustix v0.38.34
[INFO] [stderr]    Compiling log v0.4.22
[INFO] [stderr]    Compiling iana-time-zone v0.1.60
[INFO] [stderr]    Compiling tokio v1.39.3
[INFO] [stderr]    Compiling ring v0.17.8
[INFO] [stderr]    Compiling openssl-sys v0.9.103
[INFO] [stderr]    Compiling zstd-sys v2.0.13+zstd.1.5.6
[INFO] [stderr]    Compiling zeroize v1.8.1
[INFO] [stderr]    Compiling bitflags v2.6.0
[INFO] [stderr]    Compiling unicode_categories v0.1.1
[INFO] [stderr]    Compiling regex-automata v0.4.7
[INFO] [stderr]    Compiling futures-util v0.3.30
[INFO] [stderr]    Compiling sha2 v0.10.8
[INFO] [stderr]    Compiling chrono v0.4.38
[INFO] [stderr]    Compiling atoi v2.0.0
[INFO] [stderr]    Compiling bzip2-sys v0.1.11+1.0.8
[INFO] [stderr]    Compiling psm v0.1.21
[INFO] [stderr]    Compiling rustls-pemfile v2.1.3
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]    Compiling crossbeam-queue v0.3.11
[INFO] [stderr]    Compiling phf v0.11.2
[INFO] [stderr]    Compiling webpki-roots v0.26.3
[INFO] [stderr]    Compiling multer v3.1.0
[INFO] [stderr]    Compiling smartstring v1.0.1
[INFO] [stderr]    Compiling cookie v0.18.1
[INFO] [stderr]     Checking encoding_rs v0.8.34
[INFO] [stderr]    Compiling unicode-properties v0.1.2
[INFO] [stderr]    Compiling zstd-safe v7.2.1
[INFO] [stderr]    Compiling linux-raw-sys v0.4.14
[INFO] [stderr]    Compiling hex v0.4.3
[INFO] [stderr]    Compiling sqlformat v0.2.4
[INFO] [stderr]    Compiling stringprep v0.1.5
[INFO] [stderr]    Compiling hkdf v0.12.4
[INFO] [stderr]    Compiling stacker v0.1.15
[INFO] [stderr]    Compiling md-5 v0.10.6
[INFO] [stderr]     Checking http v0.2.12
[INFO] [stderr]    Compiling axum v0.7.5
[INFO] [stderr]     Checking sync_wrapper v1.0.1
[INFO] [stderr]     Checking crc32fast v1.4.2
[INFO] [stderr]    Compiling dotenvy v0.15.7
[INFO] [stderr]     Checking unicode-segmentation v1.11.0
[INFO] [stderr]    Compiling whoami v1.5.1
[INFO] [stderr]    Compiling regex v1.10.6
[INFO] [stderr]    Compiling home v0.5.9
[INFO] [stderr]     Checking adler2 v2.0.0
[INFO] [stderr]    Compiling parse-zoneinfo v0.3.1
[INFO] [stderr]     Checking miniz_oxide v0.8.0
[INFO] [stderr]     Checking futures-lite v2.3.0
[INFO] [stderr]     Checking piper v0.2.4
[INFO] [stderr]     Checking async-channel v2.3.1
[INFO] [stderr]     Checking async-lock v3.4.0
[INFO] [stderr]    Compiling mime_guess v2.0.5
[INFO] [stderr]    Compiling ptr_meta_derive v0.1.4
[INFO] [stderr]    Compiling rkyv_derive v0.7.45
[INFO] [stderr]     Checking http-body v0.4.6
[INFO] [stderr]     Checking ptr_meta v0.1.4
[INFO] [stderr]    Compiling tempfile v3.12.0
[INFO] [stderr]     Checking simd-adler32 v0.3.7
[INFO] [stderr]    Compiling zip v2.2.0
[INFO] [stderr]     Checking lockfree-object-pool v0.1.6
[INFO] [stderr]     Checking bumpalo v3.16.0
[INFO] [stderr]     Checking winnow v0.6.18
[INFO] [stderr]     Checking rxml_validation v0.9.1
[INFO] [stderr]     Checking hashbrown v0.13.2
[INFO] [stderr]     Checking anymap2 v0.13.0
[INFO] [stderr]     Checking trim-in-place v0.1.7
[INFO] [stderr]    Compiling doc-comment v0.3.3
[INFO] [stderr]     Checking async-task v4.7.1
[INFO] [stderr]     Checking regex-syntax v0.6.29
[INFO] [stderr]     Checking rxml v0.9.1
[INFO] [stderr]     Checking zopfli v0.8.1
[INFO] [stderr]     Checking flate2 v1.0.32
[INFO] [stderr]     Checking blocking v1.6.1
[INFO] [stderr]     Checking bzip2 v0.4.4
[INFO] [stderr]     Checking aes v0.8.4
[INFO] [stderr]     Checking lzma-rs v0.3.0
[INFO] [stderr]    Compiling new_mime_guess v4.0.4
[INFO] [stderr]     Checking ordered-multimap v0.6.0
[INFO] [stderr]     Checking pbkdf2 v0.12.2
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking uuid v1.10.0
[INFO] [stderr]     Checking csv-core v0.1.11
[INFO] [stderr]     Checking deflate64 v0.1.9
[INFO] [stderr]     Checking constant_time_eq v0.3.1
[INFO] [stderr]    Compiling moka v0.12.8
[INFO] [stderr]     Checking overload v0.1.1
[INFO] [stderr]     Checking linked-hash-map v0.5.6
[INFO] [stderr]     Checking nu-ansi-term v0.46.0
[INFO] [stderr]     Checking minidom v0.15.2
[INFO] [stderr]     Checking rust-ini v0.19.0
[INFO] [stderr]     Checking async-fs v2.1.2
[INFO] [stderr]    Compiling tokio-stream v0.1.15
[INFO] [stderr]     Checking yaml-rust v0.4.5
[INFO] [stderr]     Checking convert_case v0.6.0
[INFO] [stderr]     Checking blowfish v0.9.1
[INFO] [stderr]     Checking iso8601 v0.6.1
[INFO] [stderr]     Checking email-encoding v0.3.0
[INFO] [stderr]    Compiling serde_derive v1.0.209
[INFO] [stderr]    Compiling zerocopy-derive v0.7.35
[INFO] [stderr]    Compiling tracing-attributes v0.1.27
[INFO] [stderr]    Compiling thiserror-impl v1.0.63
[INFO] [stderr]    Compiling futures-macro v0.3.30
[INFO] [stderr]    Compiling tokio-macros v2.4.0
[INFO] [stderr]    Compiling async-trait v0.1.81
[INFO] [stderr]    Compiling zeroize_derive v1.4.2
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling pin-project-internal v1.1.5
[INFO] [stderr]    Compiling rustls-webpki v0.102.6
[INFO] [stderr]    Compiling axum-macros v0.4.1
[INFO] [stderr]     Checking zerocopy v0.7.35
[INFO] [stderr]    Compiling liquid-derive v0.26.8
[INFO] [stderr]     Checking thiserror v1.0.63
[INFO] [stderr]     Checking tracing v0.1.40
[INFO] [stderr]    Compiling pest v2.7.11
[INFO] [stderr]     Checking ppv-lite86 v0.2.20
[INFO] [stderr]     Checking pin-project v1.1.5
[INFO] [stderr]     Checking regex-automata v0.1.10
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]     Checking aws-region v0.25.5
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking matchers v0.1.0
[INFO] [stderr]    Compiling maybe-async v0.2.10
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]     Checking indexmap v2.4.0
[INFO] [stderr]     Checking ordered-multimap v0.7.3
[INFO] [stderr]     Checking hashlink v0.9.1
[INFO] [stderr]    Compiling pest_meta v2.7.11
[INFO] [stderr]     Checking chumsky v0.9.3
[INFO] [stderr]     Checking rust-ini v0.21.1
[INFO] [stderr]    Compiling snafu-derive v0.8.4
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]     Checking crossbeam-channel v0.5.13
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]     Checking thread_local v1.1.8
[INFO] [stderr]     Checking quoted_printable v0.5.1
[INFO] [stderr]     Checking email_address v0.2.9
[INFO] [stderr]    Compiling phf_generator v0.11.2
[INFO] [stderr]    Compiling vent v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking tagptr v0.2.0
[INFO] [stderr]    Compiling phf_codegen v0.11.2
[INFO] [stderr]     Checking triomphe v0.1.11
[INFO] [stderr]    Migrating build.rs from 2021 edition to 2024
[INFO] [stderr]     Checking http-range-header v0.4.1
[INFO] [stderr]     Checking async-walkdir v2.0.0
[INFO] [stderr]    Compiling pest_generator v2.7.11
[INFO] [stderr]     Checking bcrypt v0.16.0
[INFO] [stderr]    Compiling chrono-tz-build v0.3.0
[INFO] [stderr]     Checking heck v0.5.0
[INFO] [stderr]     Checking http-body-util v0.1.2
[INFO] [stderr]     Checking futures-executor v0.3.30
[INFO] [stderr]     Checking futures v0.3.30
[INFO] [stderr]    Compiling chrono-tz v0.9.0
[INFO] [stderr]     Checking strum v0.26.3
[INFO] [stderr]     Checking tokio-util v0.7.11
[INFO] [stderr]     Checking tower v0.4.13
[INFO] [stderr]     Checking hyper v0.14.31
[INFO] [stderr]     Checking tokio-rustls v0.26.0
[INFO] [stderr]    Compiling pest_derive v2.7.11
[INFO] [stderr]     Checking lettre v0.11.7
[INFO] [stderr]     Checking snafu v0.8.4
[INFO] [stderr]     Checking h2 v0.4.6
[INFO] [stderr]     Checking tower v0.5.1
[INFO] [stderr]     Checking zstd v0.13.2
[INFO] [stderr]     Checking smallvec v1.13.2
[INFO] [stderr]     Checking deranged v0.3.11
[INFO] [stderr]     Checking either v1.13.0
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking toml_datetime v0.6.8
[INFO] [stderr]     Checking serde_spanned v0.6.7
[INFO] [stderr]     Checking serde_path_to_error v0.1.16
[INFO] [stderr]     Checking kstring v2.0.2
[INFO] [stderr]     Checking quick-xml v0.32.0
[INFO] [stderr]     Checking tracing-serde v0.1.3
[INFO] [stderr]     Checking json5 v0.4.1
[INFO] [stderr]     Checking toml_edit v0.22.20
[INFO] [stderr]     Checking raw-cpuid v11.1.0
[INFO] [stderr]     Checking ron v0.8.1
[INFO] [stderr]     Checking itertools v0.13.0
[INFO] [stderr]     Checking serde_html_form v0.2.6
[INFO] [stderr]     Checking tower-http v0.5.2
[INFO] [stderr]     Checking parking_lot v0.12.3
[INFO] [stderr]     Checking csv-async v1.3.0
[INFO] [stderr]     Checking futures-intrusive v0.5.0
[INFO] [stderr]     Checking csv v1.3.1
[INFO] [stderr]     Checking time v0.3.36
[INFO] [stderr]     Checking tracing-subscriber v0.3.18
[INFO] [stderr]     Checking sqlx-core v0.8.1
[INFO] [stderr]     Checking toml v0.8.19
[INFO] [stderr]     Checking quanta v0.12.3
[INFO] [stderr]     Checking config v0.14.0
[INFO] [stderr]     Checking hyper v1.4.1
[INFO] [stderr]     Checking tower-sessions-core v0.13.0
[INFO] [stderr]     Checking liquid-core v0.26.9
[INFO] [stderr]     Checking tower-cookies v0.10.0
[INFO] [stderr]     Checking liquid-lib v0.26.9
[INFO] [stderr]     Checking tower-sessions-memory-store v0.13.0
[INFO] [stderr]     Checking tower-sessions v0.13.0
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking attohttpc v0.28.0
[INFO] [stderr]     Checking hyper-tls v0.5.0
[INFO] [stderr]     Checking hyper-util v0.1.7
[INFO] [stderr]     Checking aws-creds v0.37.0
[INFO] [stderr]     Checking rust_xlsxwriter v0.79.4
[INFO] [stderr]     Checking rust-s3 v0.35.1
[INFO] [stderr]     Checking sqlx-postgres v0.8.1
[INFO] [stderr]     Checking icalendar v0.16.5
[INFO] [stderr]     Checking liquid v0.26.9
[INFO] [stderr]     Checking hyper-tls v0.6.0
[INFO] [stderr]     Checking reqwest v0.12.7
[INFO] [stderr]     Checking axum-login v0.16.0
[INFO] [stderr]     Checking axum-extra v0.9.3
[INFO] [stderr]    Compiling sqlx-macros-core v0.8.1
[INFO] [stderr]    Compiling sqlx-macros v0.8.1
[INFO] [stderr]     Checking sqlx v0.8.1
[INFO] [stderr]    Migrating src/main.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed src/routes/images.rs (1 fix)
[INFO] [stderr]        Fixed src/auth/add_password.rs (2 fixes)
[INFO] [stderr]        Fixed src/routes/public.rs (1 fix)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/auth/add_password.rs:42:10
[INFO] [stdout]     |
[INFO] [stdout]  32 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  42 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  43 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/auth/add_password.rs:42:10
[INFO] [stdout]     |
[INFO] [stdout]  32 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  42 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  43 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/auth/add_password.rs:108:10
[INFO] [stdout]     |
[INFO] [stdout]  95 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 108 |         .await?
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 109 |         .into_response())
[INFO] [stdout] 110 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/auth/add_password.rs:108:10
[INFO] [stdout]     |
[INFO] [stdout]  95 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 108 |         .await?
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 109 |         .into_response())
[INFO] [stdout] 110 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/auth/add_password.rs:251:29
[INFO] [stdout]     |
[INFO] [stdout] 250 |             sleep(Duration::from_secs(60 * 5)).await;
[INFO] [stdout]     |             ----------------------------------------
[INFO] [stdout]     |             |
[INFO] [stdout]     |             `__awaitee` calls a custom destructor
[INFO] [stdout]     |             `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 251 |             if let Err(e) = state.reset_password(id).await {
[INFO] [stdout]     |                        -    ^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                        |    |                        |
[INFO] [stdout]     |                        |    |                        this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                        |    |                        up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                        |    |                        this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                        |    |                        `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |                        |    this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                        |    up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                        |    this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                        |    `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                        `e` calls a custom destructor
[INFO] [stdout]     |                        `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 254 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]     |
[INFO] [stdout] 569 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `__awaitee` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.39.3/src/runtime/time/entry.rs:652:1
[INFO] [stdout]     |
[INFO] [stdout] 652 | impl Drop for TimerEntry {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]     |
[INFO] [stdout] 569 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]     |
[INFO] [stdout] 569 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/auth/login.rs:100:6
[INFO] [stdout]     |
[INFO] [stdout]  90 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout]  91 |     let next = match next {
[INFO] [stdout]     |         ----
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `next` calls a custom destructor
[INFO] [stdout]     |         `next` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 100 |     .await
[INFO] [stdout]     |      ^^^^^
[INFO] [stdout]     |      |
[INFO] [stdout]     |      this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |      up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 101 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `next` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/auth/login.rs:100:6
[INFO] [stdout]     |
[INFO] [stdout]  90 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout]  91 |     let next = match next {
[INFO] [stdout]     |         ----
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `next` calls a custom destructor
[INFO] [stdout]     |         `next` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 100 |     .await
[INFO] [stdout]     |      ^^^^^
[INFO] [stdout]     |      |
[INFO] [stdout]     |      this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |      up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 101 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `next` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/add_event.rs:41:10
[INFO] [stdout]     |
[INFO] [stdout]  33 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  41 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  42 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/add_event.rs:41:10
[INFO] [stdout]     |
[INFO] [stdout]  33 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  41 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  42 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/add_person.rs:35:10
[INFO] [stdout]     |
[INFO] [stdout]  27 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  35 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  36 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/add_person.rs:35:10
[INFO] [stdout]     |
[INFO] [stdout]  27 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  35 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  36 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/csv_import_export.rs:41:10
[INFO] [stdout]     |
[INFO] [stdout]  33 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  41 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  42 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/csv_import_export.rs:41:10
[INFO] [stdout]     |
[INFO] [stdout]  33 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  41 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  42 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/edit_person.rs:177:380
[INFO] [stdout]     |
[INFO] [stdout] 175 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] 176 |
[INFO] [stdout] 177 |     state.compile("www/edit_person.liquid", liquid::object!({ "person": person, "supervised": events_supervised, "participated": events_participated, "pts": pts, "event_pts": event_pts, "bonus_points": bonus_points, "bonus_pts": bonus_pts, "rewards": rewards, "auth": aa, "imgs": photos, "n_imgs": photos.len() }), Some(format!("Edit {} {}", person.first_name, person.surname))).await
[INFO] [stdout]     |                                                                                                                                                                                                                                                                                                                                                                                            ^^^^^
[INFO] [stdout]     |                                                                                                                                                                                                                                                                                                                                                                                            |
[INFO] [stdout]     |                                                                                                                                                                                                                                                                                                                                                                                            this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                                                                                                                                                                                                                                                                                                                                            up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 178 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/edit_person.rs:177:380
[INFO] [stdout]     |
[INFO] [stdout] 175 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] 176 |
[INFO] [stdout] 177 |     state.compile("www/edit_person.liquid", liquid::object!({ "person": person, "supervised": events_supervised, "participated": events_participated, "pts": pts, "event_pts": event_pts, "bonus_points": bonus_points, "bonus_pts": bonus_pts, "rewards": rewards, "auth": aa, "imgs": photos, "n_imgs": photos.len() }), Some(format!("Edit {} {}", person.first_name, person.surname))).await
[INFO] [stdout]     |                                                                                                                                                                                                                                                                                                                                                                                            ^^^^^
[INFO] [stdout]     |                                                                                                                                                                                                                                                                                                                                                                                            |
[INFO] [stdout]     |                                                                                                                                                                                                                                                                                                                                                                                            this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                                                                                                                                                                                                                                                                                                                                            up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 178 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/edit_self.rs:178:378
[INFO] [stdout]     |
[INFO] [stdout]  64 |     let aa = get_auth_object(auth.clone()).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 178 |     state.compile("www/edit_self.liquid", liquid::object!({ "person": person, "supervised": events_supervised, "participated": events_participated, "pts": pts, "event_pts": event_pts, "bonus_points": bonus_points, "bonus_pts": bonus_pts, "rewards": rewards, "auth": aa, "imgs": photos, "n_imgs": photos.len() }), Some(format!("Edit {} {}", person.first_name, person.surname))).await
[INFO] [stdout]     |                                                                                                                                                                                                                                                                                                                                                                                          ^^^^^
[INFO] [stdout]     |                                                                                                                                                                                                                                                                                                                                                                                          |
[INFO] [stdout]     |                                                                                                                                                                                                                                                                                                                                                                                          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                                                                                                                                                                                                                                                                                                                                          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 179 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/edit_self.rs:178:378
[INFO] [stdout]     |
[INFO] [stdout]  64 |     let aa = get_auth_object(auth.clone()).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 178 |     state.compile("www/edit_self.liquid", liquid::object!({ "person": person, "supervised": events_supervised, "participated": events_participated, "pts": pts, "event_pts": event_pts, "bonus_points": bonus_points, "bonus_pts": bonus_pts, "rewards": rewards, "auth": aa, "imgs": photos, "n_imgs": photos.len() }), Some(format!("Edit {} {}", person.first_name, person.surname))).await
[INFO] [stdout]     |                                                                                                                                                                                                                                                                                                                                                                                          ^^^^^
[INFO] [stdout]     |                                                                                                                                                                                                                                                                                                                                                                                          |
[INFO] [stdout]     |                                                                                                                                                                                                                                                                                                                                                                                          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                                                                                                                                                                                                                                                                                                                                          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 179 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/eoy_migration.rs:51:10
[INFO] [stdout]     |
[INFO] [stdout]  40 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  51 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  52 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/eoy_migration.rs:51:10
[INFO] [stdout]     |
[INFO] [stdout]  40 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  51 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  52 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/routes/images.rs:60:29
[INFO] [stdout]      |
[INFO] [stdout]   60 |       while let Some(field) = multipart.next_field().await? {
[INFO] [stdout]      |                               ----------------------------^
[INFO] [stdout]      |                               |                      |
[INFO] [stdout]      |                               |                      this value will be stored in a temporary; let us call it `#23`
[INFO] [stdout]      |                               |                      up until Edition 2021 `#23` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                               |                      this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                               |                      `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#21`
[INFO] [stdout]      |                               up until Edition 2021 `#21` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#22`
[INFO] [stdout]      |                               up until Edition 2021 `#22` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                               `__awaitee` calls a custom destructor
[INFO] [stdout]      |                               `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]   61 |           debug!("Getting bytes");
[INFO] [stdout]   62 |           let data = field.bytes().await?;
[INFO] [stdout]      |               ----   --------------------
[INFO] [stdout]      |               |      |             |
[INFO] [stdout]      |               |      |             this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |               |      |             `#4` will be dropped later as of Edition 2024
[INFO] [stdout]      |               |      this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |               |      `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |               |      this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |               |      `#3` will be dropped later as of Edition 2024
[INFO] [stdout]      |               `data` calls a custom destructor
[INFO] [stdout]      |               `data` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   66 |           let format = ImageFormat::guess_format(&data).context(ImageSnafu {
[INFO] [stdout]      |  ______________________-
[INFO] [stdout]   67 | |             action: ImageAction::GuessingFormat,
[INFO] [stdout]   68 | |         })?;
[INFO] [stdout]      | |           -
[INFO] [stdout]      | |           |
[INFO] [stdout]      | |___________this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |             `#5` will be dropped later as of Edition 2024
[INFO] [stdout]   69 |           let ext = format
[INFO] [stdout]      |  ___________________-
[INFO] [stdout]      | |___________________|
[INFO] [stdout]   70 | |             .extensions_str()
[INFO] [stdout]   71 | |             .first()
[INFO] [stdout]   72 | |             .context(NoImageExtensionSnafu { extension: format })?;
[INFO] [stdout]      | |                                                                  -
[INFO] [stdout]      | |__________________________________________________________________|
[INFO] [stdout]      | |__________________________________________________________________this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                                                    `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   76 | |         let existing_names = state.storage.list_files("uploads").await?;
[INFO] [stdout]      | |                              ------------------------------------------
[INFO] [stdout]      | |                              |                                   |
[INFO] [stdout]      | |                              |                                   this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      | |                              |                                   `#9` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                              this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      | |                              `#7` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                              this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      | |                              `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]   89 | /         sqlx::query!(
[INFO] [stdout]   90 | |             r#"
[INFO] [stdout]   91 | | INSERT INTO public.photos
[INFO] [stdout]   92 | | ("path", event_id, added_by)
[INFO] [stdout] ...    |
[INFO] [stdout]   96 | |             user_id,
[INFO] [stdout]   97 | |         )
[INFO] [stdout]      | |         -
[INFO] [stdout]      | |_________|
[INFO] [stdout]      | |_________this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      |           `#11` will be dropped later as of Edition 2024
[INFO] [stdout]   98 | |         .execute(&mut *state.get_connection().await?)
[INFO] [stdout]      | |                        -----------------------------
[INFO] [stdout]      | |                        |                      |
[INFO] [stdout]      | |                        |                      this value will be stored in a temporary; let us call it `#15`
[INFO] [stdout]      | |                        |                      `#15` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                        this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]      | |                        `#12` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                        this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]      | |                        `#13` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                        this value will be stored in a temporary; let us call it `#14`
[INFO] [stdout]      | |                        `#14` will be dropped later as of Edition 2024
[INFO] [stdout]   99 | |         .await
[INFO] [stdout]      | |          -----
[INFO] [stdout]      | |__________|___|
[INFO] [stdout]      | |__________|___this value will be stored in a temporary; let us call it `#16`
[INFO] [stdout]      |            |   `#16` will be dropped later as of Edition 2024
[INFO] [stdout]      |            this value will be stored in a temporary; let us call it `#17`
[INFO] [stdout]      |            `#17` will be dropped later as of Edition 2024
[INFO] [stdout]  100 |           .context(SqlxSnafu {
[INFO] [stdout]  101 | |             action: SqlxAction::AddingPhotos,
[INFO] [stdout]  102 | |         })?;
[INFO] [stdout]      | |           -
[INFO] [stdout]      | |___________|
[INFO] [stdout]      | |___________this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |             `#10` will be dropped later as of Edition 2024
[INFO] [stdout]  103 |           
[INFO] [stdout]  104 | |         state.storage.write_file(file_name, data, format.to_mime_type()).await?;
[INFO] [stdout]      | |         -----------------------------------------------------------------------
[INFO] [stdout]      | |         |                                                                |
[INFO] [stdout]      | |         |                                                                this value will be stored in a temporary; let us call it `#20`
[INFO] [stdout]      | |         |                                                                `#20` will be dropped later as of Edition 2024
[INFO] [stdout]      | |         this value will be stored in a temporary; let us call it `#18`
[INFO] [stdout]      | |         `#18` will be dropped later as of Edition 2024
[INFO] [stdout]      | |         this value will be stored in a temporary; let us call it `#19`
[INFO] [stdout]      | |         `#19` will be dropped later as of Edition 2024
[INFO] [stdout]  105 | |     }
[INFO] [stdout]      | |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#21` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#21` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#21` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#22` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#22` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#22` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `data` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#4` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#5` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#6` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#9` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#10` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#11` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#12` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sqlx-core-0.8.1/src/pool/connection.rs:165:1
[INFO] [stdout]      |
[INFO] [stdout]  165 | impl<DB: Database> Drop for PoolConnection<DB> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#13` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#13` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#13` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#13` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sqlx-core-0.8.1/src/pool/connection.rs:165:1
[INFO] [stdout]      |
[INFO] [stdout]  165 | impl<DB: Database> Drop for PoolConnection<DB> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#15` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sqlx-core-0.8.1/src/pool/connection.rs:165:1
[INFO] [stdout]      |
[INFO] [stdout]  165 | impl<DB: Database> Drop for PoolConnection<DB> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#17` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#18` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#18` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#18` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#20` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#20` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#20` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/routes/images.rs:60:29
[INFO] [stdout]      |
[INFO] [stdout]   60 |       while let Some(field) = multipart.next_field().await? {
[INFO] [stdout]      |                               ----------------------------^
[INFO] [stdout]      |                               |                      |
[INFO] [stdout]      |                               |                      this value will be stored in a temporary; let us call it `#23`
[INFO] [stdout]      |                               |                      up until Edition 2021 `#23` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                               |                      this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                               |                      `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#21`
[INFO] [stdout]      |                               up until Edition 2021 `#21` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#22`
[INFO] [stdout]      |                               up until Edition 2021 `#22` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                               `__awaitee` calls a custom destructor
[INFO] [stdout]      |                               `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]   61 |           debug!("Getting bytes");
[INFO] [stdout]   62 |           let data = field.bytes().await?;
[INFO] [stdout]      |               ----   --------------------
[INFO] [stdout]      |               |      |             |
[INFO] [stdout]      |               |      |             this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |               |      |             `#4` will be dropped later as of Edition 2024
[INFO] [stdout]      |               |      this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |               |      `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |               |      this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |               |      `#3` will be dropped later as of Edition 2024
[INFO] [stdout]      |               `data` calls a custom destructor
[INFO] [stdout]      |               `data` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   66 |           let format = ImageFormat::guess_format(&data).context(ImageSnafu {
[INFO] [stdout]      |  ______________________-
[INFO] [stdout]   67 | |             action: ImageAction::GuessingFormat,
[INFO] [stdout]   68 | |         })?;
[INFO] [stdout]      | |           -
[INFO] [stdout]      | |           |
[INFO] [stdout]      | |___________this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |             `#5` will be dropped later as of Edition 2024
[INFO] [stdout]   69 |           let ext = format
[INFO] [stdout]      |  ___________________-
[INFO] [stdout]      | |___________________|
[INFO] [stdout]   70 | |             .extensions_str()
[INFO] [stdout]   71 | |             .first()
[INFO] [stdout]   72 | |             .context(NoImageExtensionSnafu { extension: format })?;
[INFO] [stdout]      | |                                                                  -
[INFO] [stdout]      | |__________________________________________________________________|
[INFO] [stdout]      | |__________________________________________________________________this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                                                    `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   76 | |         let existing_names = state.storage.list_files("uploads").await?;
[INFO] [stdout]      | |                              ------------------------------------------
[INFO] [stdout]      | |                              |                                   |
[INFO] [stdout]      | |                              |                                   this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      | |                              |                                   `#9` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                              this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      | |                              `#7` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                              this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      | |                              `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]   89 | /         sqlx::query!(
[INFO] [stdout]   90 | |             r#"
[INFO] [stdout]   91 | | INSERT INTO public.photos
[INFO] [stdout]   92 | | ("path", event_id, added_by)
[INFO] [stdout] ...    |
[INFO] [stdout]   96 | |             user_id,
[INFO] [stdout]   97 | |         )
[INFO] [stdout]      | |         -
[INFO] [stdout]      | |_________|
[INFO] [stdout]      | |_________this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      |           `#11` will be dropped later as of Edition 2024
[INFO] [stdout]   98 | |         .execute(&mut *state.get_connection().await?)
[INFO] [stdout]      | |                        -----------------------------
[INFO] [stdout]      | |                        |                      |
[INFO] [stdout]      | |                        |                      this value will be stored in a temporary; let us call it `#15`
[INFO] [stdout]      | |                        |                      `#15` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                        this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]      | |                        `#12` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                        this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]      | |                        `#13` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                        this value will be stored in a temporary; let us call it `#14`
[INFO] [stdout]      | |                        `#14` will be dropped later as of Edition 2024
[INFO] [stdout]   99 | |         .await
[INFO] [stdout]      | |          -----
[INFO] [stdout]      | |__________|___|
[INFO] [stdout]      | |__________|___this value will be stored in a temporary; let us call it `#16`
[INFO] [stdout]      |            |   `#16` will be dropped later as of Edition 2024
[INFO] [stdout]      |            this value will be stored in a temporary; let us call it `#17`
[INFO] [stdout]      |            `#17` will be dropped later as of Edition 2024
[INFO] [stdout]  100 |           .context(SqlxSnafu {
[INFO] [stdout]  101 | |             action: SqlxAction::AddingPhotos,
[INFO] [stdout]  102 | |         })?;
[INFO] [stdout]      | |           -
[INFO] [stdout]      | |___________|
[INFO] [stdout]      | |___________this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |             `#10` will be dropped later as of Edition 2024
[INFO] [stdout]  103 |           
[INFO] [stdout]  104 | |         state.storage.write_file(file_name, data, format.to_mime_type()).await?;
[INFO] [stdout]      | |         -----------------------------------------------------------------------
[INFO] [stdout]      | |         |                                                                |
[INFO] [stdout]      | |         |                                                                this value will be stored in a temporary; let us call it `#20`
[INFO] [stdout]      | |         |                                                                `#20` will be dropped later as of Edition 2024
[INFO] [stdout]      | |         this value will be stored in a temporary; let us call it `#18`
[INFO] [stdout]      | |         `#18` will be dropped later as of Edition 2024
[INFO] [stdout]      | |         this value will be stored in a temporary; let us call it `#19`
[INFO] [stdout]      | |         `#19` will be dropped later as of Edition 2024
[INFO] [stdout]  105 | |     }
[INFO] [stdout]      | |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#21` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#21` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#21` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#22` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#22` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#22` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `data` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#4` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#5` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#6` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#9` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#10` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#11` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#12` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sqlx-core-0.8.1/src/pool/connection.rs:165:1
[INFO] [stdout]      |
[INFO] [stdout]  165 | impl<DB: Database> Drop for PoolConnection<DB> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#13` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#13` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#13` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#13` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sqlx-core-0.8.1/src/pool/connection.rs:165:1
[INFO] [stdout]      |
[INFO] [stdout]  165 | impl<DB: Database> Drop for PoolConnection<DB> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#15` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sqlx-core-0.8.1/src/pool/connection.rs:165:1
[INFO] [stdout]      |
[INFO] [stdout]  165 | impl<DB: Database> Drop for PoolConnection<DB> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#17` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#18` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#18` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#18` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#20` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#20` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#20` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/index.rs:211:152
[INFO] [stdout]     |
[INFO] [stdout] 209 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] 210 |
[INFO] [stdout] 211 |     state.compile("www/index.liquid", liquid::object!({ "events_to_happen": events_to_happen, "happened_events": happened_events, "auth": aa }), None).await
[INFO] [stdout]     |                                                                                                                                                        ^^^^^
[INFO] [stdout]     |                                                                                                                                                        |
[INFO] [stdout]     |                                                                                                                                                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                                                                                                        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 212 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/index.rs:211:152
[INFO] [stdout]     |
[INFO] [stdout] 209 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] 210 |
[INFO] [stdout] 211 |     state.compile("www/index.liquid", liquid::object!({ "events_to_happen": events_to_happen, "happened_events": happened_events, "auth": aa }), None).await
[INFO] [stdout]     |                                                                                                                                                        ^^^^^
[INFO] [stdout]     |                                                                                                                                                        |
[INFO] [stdout]     |                                                                                                                                                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                                                                                                        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 212 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/rewards.rs:174:10
[INFO] [stdout]     |
[INFO] [stdout] 166 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 174 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 175 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/rewards.rs:174:10
[INFO] [stdout]     |
[INFO] [stdout] 166 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 174 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 175 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/show_events.rs:87:10
[INFO] [stdout]     |
[INFO] [stdout]  79 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  87 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  88 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/show_events.rs:87:10
[INFO] [stdout]     |
[INFO] [stdout]  79 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  87 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  88 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/show_people.rs:105:10
[INFO] [stdout]     |
[INFO] [stdout]  97 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 105 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 106 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/show_people.rs:105:10
[INFO] [stdout]     |
[INFO] [stdout]  97 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 105 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 106 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/spreadsheets.rs:126:64
[INFO] [stdout]     |
[INFO] [stdout]  63 |     let mut workbook = Workbook::new();
[INFO] [stdout]     |         ------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `workbook` calls a custom destructor
[INFO] [stdout]     |         `workbook` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 126 |     serve_bytes_with_mime(content, "application/vnd.ms-excel").await
[INFO] [stdout]     |                                                                ^^^^^
[INFO] [stdout]     |                                                                |
[INFO] [stdout]     |                                                                this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 127 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `workbook` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/spreadsheets.rs:126:64
[INFO] [stdout]     |
[INFO] [stdout]  63 |     let mut workbook = Workbook::new();
[INFO] [stdout]     |         ------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `workbook` calls a custom destructor
[INFO] [stdout]     |         `workbook` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 126 |     serve_bytes_with_mime(content, "application/vnd.ms-excel").await
[INFO] [stdout]     |                                                                ^^^^^
[INFO] [stdout]     |                                                                |
[INFO] [stdout]     |                                                                this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 127 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `workbook` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/update_events.rs:344:10
[INFO] [stdout]     |
[INFO] [stdout] 319 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 344 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 345 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/update_events.rs:344:10
[INFO] [stdout]     |
[INFO] [stdout] 319 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 344 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 345 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/calendar.rs:131:23
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 match pool.acquire().await {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                       |              |
[INFO] [stdout]     |                       |              this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]     |                       |              up until Edition 2021 `#11` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                       |              this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                       |              `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                       this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]     |                       up until Edition 2021 `#10` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                       `__awaitee` calls a custom destructor
[INFO] [stdout]     |                       `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 132 |                     Ok(conn) => match get_events(conn, tzid.clone(), &calendar_title).await {
[INFO] [stdout]     |                                       -----------------------------------------------------
[INFO] [stdout]     |                                       |                                               |
[INFO] [stdout]     |                                       |                                               this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                                       |                                               `#4` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                       `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                       this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                       `#3` will be dropped later as of Edition 2024
[INFO] [stdout] 133 |                         Ok(x) => {
[INFO] [stdout] 134 |                             *calendar.write().await = x;
[INFO] [stdout]     |                              ----------------------
[INFO] [stdout]     |                              |                |
[INFO] [stdout]     |                              |                this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]     |                              |                `#7` will be dropped later as of Edition 2024
[INFO] [stdout]     |                              this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                              `#5` will be dropped later as of Edition 2024
[INFO] [stdout]     |                              this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     |                              `#6` will be dropped later as of Edition 2024
[INFO] [stdout] 135 |                         }
[INFO] [stdout] 136 |                         Err(e) => {
[INFO] [stdout]     |                             -
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             `e` calls a custom destructor
[INFO] [stdout]     |                             `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 140 |                     Err(e) => error!(?e, "Error getting connection to update calendar"),
[INFO] [stdout]     |                         -
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]     |                         `#8` will be dropped later as of Edition 2024
[INFO] [stdout] 141 |                 }
[INFO] [stdout] 142 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] 143 |
[INFO] [stdout] 144 |             tokio::time::sleep(Duration::from_secs(10 * 60)).await; //check every 10m
[INFO] [stdout]     |             ------------------------------------------------------
[INFO] [stdout]     |             |
[INFO] [stdout]     |             this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]     |             `#9` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#10` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sqlx-core-0.8.1/src/pool/connection.rs:165:1
[INFO] [stdout]     |
[INFO] [stdout] 165 | impl<DB: Database> Drop for PoolConnection<DB> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sqlx-core-0.8.1/src/pool/connection.rs:165:1
[INFO] [stdout]     |
[INFO] [stdout] 165 | impl<DB: Database> Drop for PoolConnection<DB> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]     |
[INFO] [stdout] 569 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#4` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]     |
[INFO] [stdout] 569 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.39.3/src/sync/rwlock/write_guard.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | impl<'a, T: ?Sized> Drop for RwLockWriteGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.39.3/src/sync/rwlock/write_guard.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | impl<'a, T: ?Sized> Drop for RwLockWriteGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]     |
[INFO] [stdout] 569 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#8` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.39.3/src/runtime/time/entry.rs:652:1
[INFO] [stdout]     |
[INFO] [stdout] 652 | impl Drop for TimerEntry {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `impl IntoResponse` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]   --> src/routes/public.rs:35:13
[INFO] [stdout]    |
[INFO] [stdout] 35 | ) -> Result<impl IntoResponse, VentError> {
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]   --> src/routes/public.rs:34:12
[INFO] [stdout]    |
[INFO] [stdout] 34 |     state: &VentState,
[INFO] [stdout]    |            ^
[INFO] [stdout]    = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable
[INFO] [stdout]   --> src/routes/public.rs:33:11
[INFO] [stdout]    |
[INFO] [stdout] 33 |     path: impl Into<PathBuf> + Debug,
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]    = note: `--force-warn impl-trait-overcaptures` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]    |
[INFO] [stdout] 32 ~ pub async fn serve_static_file_from_s3<T: Into<PathBuf> + Debug>(
[INFO] [stdout] 33 ~     path: T,
[INFO] [stdout] 34 |     state: &VentState,
[INFO] [stdout] 35 ~ ) -> Result<impl IntoResponse + use<T>, VentError> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `impl IntoResponse` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]   --> src/routes/public.rs:55:13
[INFO] [stdout]    |
[INFO] [stdout] 55 | ) -> Result<impl IntoResponse, VentError> {
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]   --> src/routes/public.rs:52:11
[INFO] [stdout]    |
[INFO] [stdout] 52 |     mime: &str,
[INFO] [stdout]    |           ^
[INFO] [stdout]    = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable
[INFO] [stdout]   --> src/routes/public.rs:53:17
[INFO] [stdout]    |
[INFO] [stdout] 53 |     mut reader: impl AsyncRead + Unpin,
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]    |
[INFO] [stdout] 51 ~ pub async fn serve_read<T: AsyncRead + Unpin>(
[INFO] [stdout] 52 |     mime: &str,
[INFO] [stdout] 53 ~     mut reader: T,
[INFO] [stdout] 54 |     io_action_for_errors: IOAction,
[INFO] [stdout] 55 ~ ) -> Result<impl IntoResponse + use<T>, VentError> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/auth/add_password.rs:42:10
[INFO] [stdout]     |
[INFO] [stdout]  32 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  42 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  43 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/auth/add_password.rs:42:10
[INFO] [stdout]     |
[INFO] [stdout]  32 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  42 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  43 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/auth/add_password.rs:108:10
[INFO] [stdout]     |
[INFO] [stdout]  95 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 108 |         .await?
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 109 |         .into_response())
[INFO] [stdout] 110 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/auth/add_password.rs:108:10
[INFO] [stdout]     |
[INFO] [stdout]  95 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 108 |         .await?
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 109 |         .into_response())
[INFO] [stdout] 110 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/auth/add_password.rs:251:29
[INFO] [stdout]     |
[INFO] [stdout] 250 |             sleep(Duration::from_secs(60 * 5)).await;
[INFO] [stdout]     |             ----------------------------------------
[INFO] [stdout]     |             |
[INFO] [stdout]     |             `__awaitee` calls a custom destructor
[INFO] [stdout]     |             `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 251 |             if let Err(e) = state.reset_password(id).await {
[INFO] [stdout]     |                        -    ^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                        |    |                        |
[INFO] [stdout]     |                        |    |                        this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                        |    |                        up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                        |    |                        this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                        |    |                        `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |                        |    this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                        |    up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                        |    this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                        |    `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                        `e` calls a custom destructor
[INFO] [stdout]     |                        `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 254 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]     |
[INFO] [stdout] 569 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `__awaitee` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.39.3/src/runtime/time/entry.rs:652:1
[INFO] [stdout]     |
[INFO] [stdout] 652 | impl Drop for TimerEntry {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]     |
[INFO] [stdout] 569 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]     |
[INFO] [stdout] 569 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/auth/login.rs:100:6
[INFO] [stdout]     |
[INFO] [stdout]  90 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout]  91 |     let next = match next {
[INFO] [stdout]     |         ----
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `next` calls a custom destructor
[INFO] [stdout]     |         `next` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 100 |     .await
[INFO] [stdout]     |      ^^^^^
[INFO] [stdout]     |      |
[INFO] [stdout]     |      this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |      up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 101 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `next` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/auth/login.rs:100:6
[INFO] [stdout]     |
[INFO] [stdout]  90 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout]  91 |     let next = match next {
[INFO] [stdout]     |         ----
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `next` calls a custom destructor
[INFO] [stdout]     |         `next` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 100 |     .await
[INFO] [stdout]     |      ^^^^^
[INFO] [stdout]     |      |
[INFO] [stdout]     |      this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |      up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 101 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `next` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/add_event.rs:41:10
[INFO] [stdout]     |
[INFO] [stdout]  33 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  41 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  42 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/add_event.rs:41:10
[INFO] [stdout]     |
[INFO] [stdout]  33 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  41 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  42 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/add_person.rs:35:10
[INFO] [stdout]     |
[INFO] [stdout]  27 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  35 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  36 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/add_person.rs:35:10
[INFO] [stdout]     |
[INFO] [stdout]  27 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  35 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  36 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/csv_import_export.rs:41:10
[INFO] [stdout]     |
[INFO] [stdout]  33 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  41 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  42 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/csv_import_export.rs:41:10
[INFO] [stdout]     |
[INFO] [stdout]  33 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  41 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  42 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/edit_person.rs:177:380
[INFO] [stdout]     |
[INFO] [stdout] 175 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] 176 |
[INFO] [stdout] 177 |     state.compile("www/edit_person.liquid", liquid::object!({ "person": person, "supervised": events_supervised, "participated": events_participated, "pts": pts, "event_pts": event_pts, "bonus_points": bonus_points, "bonus_pts": bonus_pts, "rewards": rewards, "auth": aa, "imgs": photos, "n_imgs": photos.len() }), Some(format!("Edit {} {}", person.first_name, person.surname))).await
[INFO] [stdout]     |                                                                                                                                                                                                                                                                                                                                                                                            ^^^^^
[INFO] [stdout]     |                                                                                                                                                                                                                                                                                                                                                                                            |
[INFO] [stdout]     |                                                                                                                                                                                                                                                                                                                                                                                            this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                                                                                                                                                                                                                                                                                                                                            up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 178 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/edit_person.rs:177:380
[INFO] [stdout]     |
[INFO] [stdout] 175 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] 176 |
[INFO] [stdout] 177 |     state.compile("www/edit_person.liquid", liquid::object!({ "person": person, "supervised": events_supervised, "participated": events_participated, "pts": pts, "event_pts": event_pts, "bonus_points": bonus_points, "bonus_pts": bonus_pts, "rewards": rewards, "auth": aa, "imgs": photos, "n_imgs": photos.len() }), Some(format!("Edit {} {}", person.first_name, person.surname))).await
[INFO] [stdout]     |                                                                                                                                                                                                                                                                                                                                                                                            ^^^^^
[INFO] [stdout]     |                                                                                                                                                                                                                                                                                                                                                                                            |
[INFO] [stdout]     |                                                                                                                                                                                                                                                                                                                                                                                            this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                                                                                                                                                                                                                                                                                                                                            up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 178 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/edit_self.rs:178:378
[INFO] [stdout]     |
[INFO] [stdout]  64 |     let aa = get_auth_object(auth.clone()).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 178 |     state.compile("www/edit_self.liquid", liquid::object!({ "person": person, "supervised": events_supervised, "participated": events_participated, "pts": pts, "event_pts": event_pts, "bonus_points": bonus_points, "bonus_pts": bonus_pts, "rewards": rewards, "auth": aa, "imgs": photos, "n_imgs": photos.len() }), Some(format!("Edit {} {}", person.first_name, person.surname))).await
[INFO] [stdout]     |                                                                                                                                                                                                                                                                                                                                                                                          ^^^^^
[INFO] [stdout]     |                                                                                                                                                                                                                                                                                                                                                                                          |
[INFO] [stdout]     |                                                                                                                                                                                                                                                                                                                                                                                          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                                                                                                                                                                                                                                                                                                                                          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 179 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/edit_self.rs:178:378
[INFO] [stdout]     |
[INFO] [stdout]  64 |     let aa = get_auth_object(auth.clone()).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 178 |     state.compile("www/edit_self.liquid", liquid::object!({ "person": person, "supervised": events_supervised, "participated": events_participated, "pts": pts, "event_pts": event_pts, "bonus_points": bonus_points, "bonus_pts": bonus_pts, "rewards": rewards, "auth": aa, "imgs": photos, "n_imgs": photos.len() }), Some(format!("Edit {} {}", person.first_name, person.surname))).await
[INFO] [stdout]     |                                                                                                                                                                                                                                                                                                                                                                                          ^^^^^
[INFO] [stdout]     |                                                                                                                                                                                                                                                                                                                                                                                          |
[INFO] [stdout]     |                                                                                                                                                                                                                                                                                                                                                                                          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                                                                                                                                                                                                                                                                                                                                          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 179 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/eoy_migration.rs:51:10
[INFO] [stdout]     |
[INFO] [stdout]  40 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  51 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  52 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/eoy_migration.rs:51:10
[INFO] [stdout]     |
[INFO] [stdout]  40 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  51 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  52 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/routes/images.rs:60:29
[INFO] [stdout]      |
[INFO] [stdout]   60 |       while let Some(field) = multipart.next_field().await? {
[INFO] [stdout]      |                               ----------------------------^
[INFO] [stdout]      |                               |                      |
[INFO] [stdout]      |                               |                      this value will be stored in a temporary; let us call it `#23`
[INFO] [stdout]      |                               |                      up until Edition 2021 `#23` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                               |                      this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                               |                      `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#21`
[INFO] [stdout]      |                               up until Edition 2021 `#21` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#22`
[INFO] [stdout]      |                               up until Edition 2021 `#22` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                               `__awaitee` calls a custom destructor
[INFO] [stdout]      |                               `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]   61 |           debug!("Getting bytes");
[INFO] [stdout]   62 |           let data = field.bytes().await?;
[INFO] [stdout]      |               ----   --------------------
[INFO] [stdout]      |               |      |             |
[INFO] [stdout]      |               |      |             this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |               |      |             `#4` will be dropped later as of Edition 2024
[INFO] [stdout]      |               |      this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |               |      `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |               |      this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |               |      `#3` will be dropped later as of Edition 2024
[INFO] [stdout]      |               `data` calls a custom destructor
[INFO] [stdout]      |               `data` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   66 |           let format = ImageFormat::guess_format(&data).context(ImageSnafu {
[INFO] [stdout]      |  ______________________-
[INFO] [stdout]   67 | |             action: ImageAction::GuessingFormat,
[INFO] [stdout]   68 | |         })?;
[INFO] [stdout]      | |           -
[INFO] [stdout]      | |           |
[INFO] [stdout]      | |___________this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |             `#5` will be dropped later as of Edition 2024
[INFO] [stdout]   69 |           let ext = format
[INFO] [stdout]      |  ___________________-
[INFO] [stdout]      | |___________________|
[INFO] [stdout]   70 | |             .extensions_str()
[INFO] [stdout]   71 | |             .first()
[INFO] [stdout]   72 | |             .context(NoImageExtensionSnafu { extension: format })?;
[INFO] [stdout]      | |                                                                  -
[INFO] [stdout]      | |__________________________________________________________________|
[INFO] [stdout]      | |__________________________________________________________________this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                                                    `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   76 | |         let existing_names = state.storage.list_files("uploads").await?;
[INFO] [stdout]      | |                              ------------------------------------------
[INFO] [stdout]      | |                              |                                   |
[INFO] [stdout]      | |                              |                                   this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      | |                              |                                   `#9` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                              this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      | |                              `#7` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                              this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      | |                              `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]   89 | /         sqlx::query!(
[INFO] [stdout]   90 | |             r#"
[INFO] [stdout]   91 | | INSERT INTO public.photos
[INFO] [stdout]   92 | | ("path", event_id, added_by)
[INFO] [stdout] ...    |
[INFO] [stdout]   96 | |             user_id,
[INFO] [stdout]   97 | |         )
[INFO] [stdout]      | |         -
[INFO] [stdout]      | |_________|
[INFO] [stdout]      | |_________this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      |           `#11` will be dropped later as of Edition 2024
[INFO] [stdout]   98 | |         .execute(&mut *state.get_connection().await?)
[INFO] [stdout]      | |                        -----------------------------
[INFO] [stdout]      | |                        |                      |
[INFO] [stdout]      | |                        |                      this value will be stored in a temporary; let us call it `#15`
[INFO] [stdout]      | |                        |                      `#15` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                        this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]      | |                        `#12` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                        this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]      | |                        `#13` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                        this value will be stored in a temporary; let us call it `#14`
[INFO] [stdout]      | |                        `#14` will be dropped later as of Edition 2024
[INFO] [stdout]   99 | |         .await
[INFO] [stdout]      | |          -----
[INFO] [stdout]      | |__________|___|
[INFO] [stdout]      | |__________|___this value will be stored in a temporary; let us call it `#16`
[INFO] [stdout]      |            |   `#16` will be dropped later as of Edition 2024
[INFO] [stdout]      |            this value will be stored in a temporary; let us call it `#17`
[INFO] [stdout]      |            `#17` will be dropped later as of Edition 2024
[INFO] [stdout]  100 |           .context(SqlxSnafu {
[INFO] [stdout]  101 | |             action: SqlxAction::AddingPhotos,
[INFO] [stdout]  102 | |         })?;
[INFO] [stdout]      | |           -
[INFO] [stdout]      | |___________|
[INFO] [stdout]      | |___________this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |             `#10` will be dropped later as of Edition 2024
[INFO] [stdout]  103 |           
[INFO] [stdout]  104 | |         state.storage.write_file(file_name, data, format.to_mime_type()).await?;
[INFO] [stdout]      | |         -----------------------------------------------------------------------
[INFO] [stdout]      | |         |                                                                |
[INFO] [stdout]      | |         |                                                                this value will be stored in a temporary; let us call it `#20`
[INFO] [stdout]      | |         |                                                                `#20` will be dropped later as of Edition 2024
[INFO] [stdout]      | |         this value will be stored in a temporary; let us call it `#18`
[INFO] [stdout]      | |         `#18` will be dropped later as of Edition 2024
[INFO] [stdout]      | |         this value will be stored in a temporary; let us call it `#19`
[INFO] [stdout]      | |         `#19` will be dropped later as of Edition 2024
[INFO] [stdout]  105 | |     }
[INFO] [stdout]      | |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#21` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#21` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#21` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#22` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#22` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#22` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `data` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#4` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#5` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#6` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#9` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#10` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#11` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#12` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sqlx-core-0.8.1/src/pool/connection.rs:165:1
[INFO] [stdout]      |
[INFO] [stdout]  165 | impl<DB: Database> Drop for PoolConnection<DB> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#13` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#13` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#13` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#13` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sqlx-core-0.8.1/src/pool/connection.rs:165:1
[INFO] [stdout]      |
[INFO] [stdout]  165 | impl<DB: Database> Drop for PoolConnection<DB> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#15` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sqlx-core-0.8.1/src/pool/connection.rs:165:1
[INFO] [stdout]      |
[INFO] [stdout]  165 | impl<DB: Database> Drop for PoolConnection<DB> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#17` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#18` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#18` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#18` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#20` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#20` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#20` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/routes/images.rs:60:29
[INFO] [stdout]      |
[INFO] [stdout]   60 |       while let Some(field) = multipart.next_field().await? {
[INFO] [stdout]      |                               ----------------------------^
[INFO] [stdout]      |                               |                      |
[INFO] [stdout]      |                               |                      this value will be stored in a temporary; let us call it `#23`
[INFO] [stdout]      |                               |                      up until Edition 2021 `#23` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                               |                      this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                               |                      `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#21`
[INFO] [stdout]      |                               up until Edition 2021 `#21` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#22`
[INFO] [stdout]      |                               up until Edition 2021 `#22` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                               `__awaitee` calls a custom destructor
[INFO] [stdout]      |                               `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]   61 |           debug!("Getting bytes");
[INFO] [stdout]   62 |           let data = field.bytes().await?;
[INFO] [stdout]      |               ----   --------------------
[INFO] [stdout]      |               |      |             |
[INFO] [stdout]      |               |      |             this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |               |      |             `#4` will be dropped later as of Edition 2024
[INFO] [stdout]      |               |      this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |               |      `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |               |      this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |               |      `#3` will be dropped later as of Edition 2024
[INFO] [stdout]      |               `data` calls a custom destructor
[INFO] [stdout]      |               `data` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   66 |           let format = ImageFormat::guess_format(&data).context(ImageSnafu {
[INFO] [stdout]      |  ______________________-
[INFO] [stdout]   67 | |             action: ImageAction::GuessingFormat,
[INFO] [stdout]   68 | |         })?;
[INFO] [stdout]      | |           -
[INFO] [stdout]      | |           |
[INFO] [stdout]      | |___________this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |             `#5` will be dropped later as of Edition 2024
[INFO] [stdout]   69 |           let ext = format
[INFO] [stdout]      |  ___________________-
[INFO] [stdout]      | |___________________|
[INFO] [stdout]   70 | |             .extensions_str()
[INFO] [stdout]   71 | |             .first()
[INFO] [stdout]   72 | |             .context(NoImageExtensionSnafu { extension: format })?;
[INFO] [stdout]      | |                                                                  -
[INFO] [stdout]      | |__________________________________________________________________|
[INFO] [stdout]      | |__________________________________________________________________this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                                                    `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   76 | |         let existing_names = state.storage.list_files("uploads").await?;
[INFO] [stdout]      | |                              ------------------------------------------
[INFO] [stdout]      | |                              |                                   |
[INFO] [stdout]      | |                              |                                   this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      | |                              |                                   `#9` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                              this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      | |                              `#7` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                              this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      | |                              `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]   89 | /         sqlx::query!(
[INFO] [stdout]   90 | |             r#"
[INFO] [stdout]   91 | | INSERT INTO public.photos
[INFO] [stdout]   92 | | ("path", event_id, added_by)
[INFO] [stdout] ...    |
[INFO] [stdout]   96 | |             user_id,
[INFO] [stdout]   97 | |         )
[INFO] [stdout]      | |         -
[INFO] [stdout]      | |_________|
[INFO] [stdout]      | |_________this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      |           `#11` will be dropped later as of Edition 2024
[INFO] [stdout]   98 | |         .execute(&mut *state.get_connection().await?)
[INFO] [stdout]      | |                        -----------------------------
[INFO] [stdout]      | |                        |                      |
[INFO] [stdout]      | |                        |                      this value will be stored in a temporary; let us call it `#15`
[INFO] [stdout]      | |                        |                      `#15` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                        this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]      | |                        `#12` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                        this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]      | |                        `#13` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                        this value will be stored in a temporary; let us call it `#14`
[INFO] [stdout]      | |                        `#14` will be dropped later as of Edition 2024
[INFO] [stdout]   99 | |         .await
[INFO] [stdout]      | |          -----
[INFO] [stdout]      | |__________|___|
[INFO] [stdout]      | |__________|___this value will be stored in a temporary; let us call it `#16`
[INFO] [stdout]      |            |   `#16` will be dropped later as of Edition 2024
[INFO] [stdout]      |            this value will be stored in a temporary; let us call it `#17`
[INFO] [stdout]      |            `#17` will be dropped later as of Edition 2024
[INFO] [stdout]  100 |           .context(SqlxSnafu {
[INFO] [stdout]  101 | |             action: SqlxAction::AddingPhotos,
[INFO] [stdout]  102 | |         })?;
[INFO] [stdout]      | |           -
[INFO] [stdout]      | |___________|
[INFO] [stdout]      | |___________this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |             `#10` will be dropped later as of Edition 2024
[INFO] [stdout]  103 |           
[INFO] [stdout]  104 | |         state.storage.write_file(file_name, data, format.to_mime_type()).await?;
[INFO] [stdout]      | |         -----------------------------------------------------------------------
[INFO] [stdout]      | |         |                                                                |
[INFO] [stdout]      | |         |                                                                this value will be stored in a temporary; let us call it `#20`
[INFO] [stdout]      | |         |                                                                `#20` will be dropped later as of Edition 2024
[INFO] [stdout]      | |         this value will be stored in a temporary; let us call it `#18`
[INFO] [stdout]      | |         `#18` will be dropped later as of Edition 2024
[INFO] [stdout]      | |         this value will be stored in a temporary; let us call it `#19`
[INFO] [stdout]      | |         `#19` will be dropped later as of Edition 2024
[INFO] [stdout]  105 | |     }
[INFO] [stdout]      | |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#21` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#21` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#21` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#22` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#22` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#22` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `data` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#4` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#5` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#6` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#9` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#10` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#11` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#12` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sqlx-core-0.8.1/src/pool/connection.rs:165:1
[INFO] [stdout]      |
[INFO] [stdout]  165 | impl<DB: Database> Drop for PoolConnection<DB> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#13` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#13` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#13` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#13` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sqlx-core-0.8.1/src/pool/connection.rs:165:1
[INFO] [stdout]      |
[INFO] [stdout]  165 | impl<DB: Database> Drop for PoolConnection<DB> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#15` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sqlx-core-0.8.1/src/pool/connection.rs:165:1
[INFO] [stdout]      |
[INFO] [stdout]  165 | impl<DB: Database> Drop for PoolConnection<DB> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#17` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#18` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#18` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#18` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#20` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#20` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]      |
[INFO] [stdout]  569 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#20` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]      |
[INFO] [stdout]  677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/index.rs:211:152
[INFO] [stdout]     |
[INFO] [stdout] 209 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] 210 |
[INFO] [stdout] 211 |     state.compile("www/index.liquid", liquid::object!({ "events_to_happen": events_to_happen, "happened_events": happened_events, "auth": aa }), None).await
[INFO] [stdout]     |                                                                                                                                                        ^^^^^
[INFO] [stdout]     |                                                                                                                                                        |
[INFO] [stdout]     |                                                                                                                                                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                                                                                                        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 212 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/index.rs:211:152
[INFO] [stdout]     |
[INFO] [stdout] 209 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] 210 |
[INFO] [stdout] 211 |     state.compile("www/index.liquid", liquid::object!({ "events_to_happen": events_to_happen, "happened_events": happened_events, "auth": aa }), None).await
[INFO] [stdout]     |                                                                                                                                                        ^^^^^
[INFO] [stdout]     |                                                                                                                                                        |
[INFO] [stdout]     |                                                                                                                                                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                                                                                                        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 212 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/rewards.rs:174:10
[INFO] [stdout]     |
[INFO] [stdout] 166 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 174 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 175 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/rewards.rs:174:10
[INFO] [stdout]     |
[INFO] [stdout] 166 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 174 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 175 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/show_events.rs:87:10
[INFO] [stdout]     |
[INFO] [stdout]  79 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  87 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  88 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/show_events.rs:87:10
[INFO] [stdout]     |
[INFO] [stdout]  79 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  87 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  88 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/show_people.rs:105:10
[INFO] [stdout]     |
[INFO] [stdout]  97 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 105 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 106 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/show_people.rs:105:10
[INFO] [stdout]     |
[INFO] [stdout]  97 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 105 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 106 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/spreadsheets.rs:126:64
[INFO] [stdout]     |
[INFO] [stdout]  63 |     let mut workbook = Workbook::new();
[INFO] [stdout]     |         ------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `workbook` calls a custom destructor
[INFO] [stdout]     |         `workbook` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 126 |     serve_bytes_with_mime(content, "application/vnd.ms-excel").await
[INFO] [stdout]     |                                                                ^^^^^
[INFO] [stdout]     |                                                                |
[INFO] [stdout]     |                                                                this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 127 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `workbook` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/spreadsheets.rs:126:64
[INFO] [stdout]     |
[INFO] [stdout]  63 |     let mut workbook = Workbook::new();
[INFO] [stdout]     |         ------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `workbook` calls a custom destructor
[INFO] [stdout]     |         `workbook` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 126 |     serve_bytes_with_mime(content, "application/vnd.ms-excel").await
[INFO] [stdout]     |                                                                ^^^^^
[INFO] [stdout]     |                                                                |
[INFO] [stdout]     |                                                                this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 127 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `workbook` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/update_events.rs:344:10
[INFO] [stdout]     |
[INFO] [stdout] 319 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 344 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 345 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/update_events.rs:344:10
[INFO] [stdout]     |
[INFO] [stdout] 319 |     let aa = get_auth_object(auth).await?;
[INFO] [stdout]     |         --
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `aa` calls a custom destructor
[INFO] [stdout]     |         `aa` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 344 |         .await
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 345 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `aa` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 28s
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/routes/calendar.rs:131:23
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 match pool.acquire().await {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                       |              |
[INFO] [stdout]     |                       |              this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]     |                       |              up until Edition 2021 `#11` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                       |              this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                       |              `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                       this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]     |                       up until Edition 2021 `#10` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                       `__awaitee` calls a custom destructor
[INFO] [stdout]     |                       `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 132 |                     Ok(conn) => match get_events(conn, tzid.clone(), &calendar_title).await {
[INFO] [stdout]     |                                       -----------------------------------------------------
[INFO] [stdout]     |                                       |                                               |
[INFO] [stdout]     |                                       |                                               this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                                       |                                               `#4` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                       `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                       this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                       `#3` will be dropped later as of Edition 2024
[INFO] [stdout] 133 |                         Ok(x) => {
[INFO] [stdout] 134 |                             *calendar.write().await = x;
[INFO] [stdout]     |                              ----------------------
[INFO] [stdout]     |                              |                |
[INFO] [stdout]     |                              |                this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]     |                              |                `#7` will be dropped later as of Edition 2024
[INFO] [stdout]     |                              this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                              `#5` will be dropped later as of Edition 2024
[INFO] [stdout]     |                              this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     |                              `#6` will be dropped later as of Edition 2024
[INFO] [stdout] 135 |                         }
[INFO] [stdout] 136 |                         Err(e) => {
[INFO] [stdout]     |                             -
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             `e` calls a custom destructor
[INFO] [stdout]     |                             `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 140 |                     Err(e) => error!(?e, "Error getting connection to update calendar"),
[INFO] [stdout]     |                         -
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]     |                         `#8` will be dropped later as of Edition 2024
[INFO] [stdout] 141 |                 }
[INFO] [stdout] 142 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] 143 |
[INFO] [stdout] 144 |             tokio::time::sleep(Duration::from_secs(10 * 60)).await; //check every 10m
[INFO] [stdout]     |             ------------------------------------------------------
[INFO] [stdout]     |             |
[INFO] [stdout]     |             this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]     |             `#9` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#10` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sqlx-core-0.8.1/src/pool/connection.rs:165:1
[INFO] [stdout]     |
[INFO] [stdout] 165 | impl<DB: Database> Drop for PoolConnection<DB> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sqlx-core-0.8.1/src/pool/connection.rs:165:1
[INFO] [stdout]     |
[INFO] [stdout] 165 | impl<DB: Database> Drop for PoolConnection<DB> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]     |
[INFO] [stdout] 569 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#4` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]     |
[INFO] [stdout] 569 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.39.3/src/sync/rwlock/write_guard.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | impl<'a, T: ?Sized> Drop for RwLockWriteGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.39.3/src/sync/rwlock/write_guard.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | impl<'a, T: ?Sized> Drop for RwLockWriteGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.1/src/bytes.rs:569:1
[INFO] [stdout]     |
[INFO] [stdout] 569 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/kstring-2.0.2/src/string.rs:677:5
[INFO] [stdout]     |
[INFO] [stdout] 677 |     impl<B> Drop for KStringInner<B> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#8` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.39.3/src/runtime/time/entry.rs:652:1
[INFO] [stdout]     |
[INFO] [stdout] 652 | impl Drop for TimerEntry {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `impl IntoResponse` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]   --> src/routes/public.rs:35:13
[INFO] [stdout]    |
[INFO] [stdout] 35 | ) -> Result<impl IntoResponse, VentError> {
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]   --> src/routes/public.rs:34:12
[INFO] [stdout]    |
[INFO] [stdout] 34 |     state: &VentState,
[INFO] [stdout]    |            ^
[INFO] [stdout]    = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable
[INFO] [stdout]   --> src/routes/public.rs:33:11
[INFO] [stdout]    |
[INFO] [stdout] 33 |     path: impl Into<PathBuf> + Debug,
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]    = note: `--force-warn impl-trait-overcaptures` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]    |
[INFO] [stdout] 32 ~ pub async fn serve_static_file_from_s3<T: Into<PathBuf> + Debug>(
[INFO] [stdout] 33 ~     path: T,
[INFO] [stdout] 34 |     state: &VentState,
[INFO] [stdout] 35 ~ ) -> Result<impl IntoResponse + use<T>, VentError> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `impl IntoResponse` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]   --> src/routes/public.rs:55:13
[INFO] [stdout]    |
[INFO] [stdout] 55 | ) -> Result<impl IntoResponse, VentError> {
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]   --> src/routes/public.rs:52:11
[INFO] [stdout]    |
[INFO] [stdout] 52 |     mime: &str,
[INFO] [stdout]    |           ^
[INFO] [stdout]    = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable
[INFO] [stdout]   --> src/routes/public.rs:53:17
[INFO] [stdout]    |
[INFO] [stdout] 53 |     mut reader: impl AsyncRead + Unpin,
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]    |
[INFO] [stdout] 51 ~ pub async fn serve_read<T: AsyncRead + Unpin>(
[INFO] [stdout] 52 |     mime: &str,
[INFO] [stdout] 53 ~     mut reader: T,
[INFO] [stdout] 54 |     io_action_for_errors: IOAction,
[INFO] [stdout] 55 ~ ) -> Result<impl IntoResponse + use<T>, VentError> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] crater-edition-check: vent v0.1.0 (/opt/rustwide/workdir) updating edition from 2021 to 2024
[INFO] [stderr]    Compiling vent v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0597]: `state` does not live long enough
[INFO] [stdout]    --> src/routes/images.rs:113:43
[INFO] [stdout]     |
[INFO] [stdout] 111 | async fn serve_image(Path(img_path): Path<String>, State(state): State<VentState>) -> Result<impl IntoResponse, VentError> {
[INFO] [stdout]     |                                                          -----                        ------------------------------------ return type of async function `Result<impl IntoResponse, VentError>` contains a lifetime `'1`
[INFO] [stdout]     |                                                          |
[INFO] [stdout]     |                                                          binding `state` declared here
[INFO] [stdout] 112 |     let short_path = format!("uploads/{img_path}");
[INFO] [stdout] 113 |     serve_static_file_from_s3(short_path, &state).await
[INFO] [stdout]     |     --------------------------------------^^^^^^-
[INFO] [stdout]     |     |                                     |
[INFO] [stdout]     |     |                                     borrowed value does not live long enough
[INFO] [stdout]     |     argument requires that `state` is borrowed for `'1`
[INFO] [stdout] 114 | }
[INFO] [stdout]     | - `state` dropped here while still borrowed
[INFO] [stdout]     |
[INFO] [stdout] note: this call may capture more lifetimes than intended, because Rust 2024 has adjusted the `impl Trait` lifetime capture rules
[INFO] [stdout]    --> src/routes/images.rs:113:5
[INFO] [stdout]     |
[INFO] [stdout] 113 |     serve_static_file_from_s3(short_path, &state).await
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable
[INFO] [stdout]    --> src/routes/public.rs:33:11
[INFO] [stdout]     |
[INFO] [stdout]  33 |     path: impl Into<PathBuf> + Debug,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]    --> src/routes/public.rs:32:39
[INFO] [stdout]     |
[INFO] [stdout]  32 ~ pub async fn serve_static_file_from_s3<T: Into<PathBuf> + Debug>(
[INFO] [stdout]  33 ~     path: T,
[INFO] [stdout]  34 |     state: &VentState,
[INFO] [stdout]  35 ~ ) -> Result<impl IntoResponse + use<T>, VentError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0597]: `state` does not live long enough
[INFO] [stdout]    --> src/routes/images.rs:113:43
[INFO] [stdout]     |
[INFO] [stdout] 111 | async fn serve_image(Path(img_path): Path<String>, State(state): State<VentState>) -> Result<impl IntoResponse, VentError> {
[INFO] [stdout]     |                                                          -----                        ------------------------------------ return type of async function `Result<impl IntoResponse, VentError>` contains a lifetime `'1`
[INFO] [stdout]     |                                                          |
[INFO] [stdout]     |                                                          binding `state` declared here
[INFO] [stdout] 112 |     let short_path = format!("uploads/{img_path}");
[INFO] [stdout] 113 |     serve_static_file_from_s3(short_path, &state).await
[INFO] [stdout]     |     --------------------------------------^^^^^^-
[INFO] [stdout]     |     |                                     |
[INFO] [stdout]     |     |                                     borrowed value does not live long enough
[INFO] [stdout]     |     argument requires that `state` is borrowed for `'1`
[INFO] [stdout] 114 | }
[INFO] [stdout]     | - `state` dropped here while still borrowed
[INFO] [stdout]     |
[INFO] [stdout] note: this call may capture more lifetimes than intended, because Rust 2024 has adjusted the `impl Trait` lifetime capture rules
[INFO] [stdout]    --> src/routes/images.rs:113:5
[INFO] [stdout]     |
[INFO] [stdout] 113 |     serve_static_file_from_s3(short_path, &state).await
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable
[INFO] [stdout]    --> src/routes/public.rs:33:11
[INFO] [stdout]     |
[INFO] [stdout]  33 |     path: impl Into<PathBuf> + Debug,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]    --> src/routes/public.rs:32:39
[INFO] [stdout]     |
[INFO] [stdout]  32 ~ pub async fn serve_static_file_from_s3<T: Into<PathBuf> + Debug>(
[INFO] [stdout]  33 ~     path: T,
[INFO] [stdout]  34 |     state: &VentState,
[INFO] [stdout]  35 ~ ) -> Result<impl IntoResponse + use<T>, VentError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0597]: `state` does not live long enough
[INFO] [stdout]    --> src/routes/images.rs:209:42
[INFO] [stdout]     |
[INFO] [stdout] 119 |     State(state): State<VentState>,
[INFO] [stdout]     |           ----- binding `state` declared here
[INFO] [stdout] 120 | ) -> Result<impl IntoResponse, VentError> {
[INFO] [stdout]     |      ------------------------------------ return type of async function `Result<impl IntoResponse, VentError>` contains a lifetime `'1`
[INFO] [stdout] ...
[INFO] [stdout] 209 |     serve_static_file_from_s3(file_name, &state).await
[INFO] [stdout]     |     -------------------------------------^^^^^^-
[INFO] [stdout]     |     |                                    |
[INFO] [stdout]     |     |                                    borrowed value does not live long enough
[INFO] [stdout]     |     argument requires that `state` is borrowed for `'1`
[INFO] [stdout] 210 | }
[INFO] [stdout]     | - `state` dropped here while still borrowed
[INFO] [stdout]     |
[INFO] [stdout] note: this call may capture more lifetimes than intended, because Rust 2024 has adjusted the `impl Trait` lifetime capture rules
[INFO] [stdout]    --> src/routes/images.rs:209:5
[INFO] [stdout]     |
[INFO] [stdout] 209 |     serve_static_file_from_s3(file_name, &state).await
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable
[INFO] [stdout]    --> src/routes/public.rs:33:11
[INFO] [stdout]     |
[INFO] [stdout]  33 |     path: impl Into<PathBuf> + Debug,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]    --> src/routes/public.rs:32:39
[INFO] [stdout]     |
[INFO] [stdout]  32 ~ pub async fn serve_static_file_from_s3<T: Into<PathBuf> + Debug>(
[INFO] [stdout]  33 ~     path: T,
[INFO] [stdout]  34 |     state: &VentState,
[INFO] [stdout]  35 ~ ) -> Result<impl IntoResponse + use<T>, VentError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0597]: `state` does not live long enough
[INFO] [stdout]    --> src/routes/images.rs:113:43
[INFO] [stdout]     |
[INFO] [stdout] 111 | async fn serve_image(Path(img_path): Path<String>, State(state): State<VentState>) -> Result<impl IntoResponse, VentError> {
[INFO] [stdout]     |                                                          -----                        ------------------------------------ return type of async function `Result<impl IntoResponse, VentError>` contains a lifetime `'1`
[INFO] [stdout]     |                                                          |
[INFO] [stdout]     |                                                          binding `state` declared here
[INFO] [stdout] 112 |     let short_path = format!("uploads/{img_path}");
[INFO] [stdout] 113 |     serve_static_file_from_s3(short_path, &state).await
[INFO] [stdout]     |     --------------------------------------^^^^^^-
[INFO] [stdout]     |     |                                     |
[INFO] [stdout]     |     |                                     borrowed value does not live long enough
[INFO] [stdout]     |     argument requires that `state` is borrowed for `'1`
[INFO] [stdout] 114 | }
[INFO] [stdout]     | - `state` dropped here while still borrowed
[INFO] [stdout]     |
[INFO] [stdout] note: this call may capture more lifetimes than intended, because Rust 2024 has adjusted the `impl Trait` lifetime capture rules
[INFO] [stdout]    --> src/routes/images.rs:113:5
[INFO] [stdout]     |
[INFO] [stdout] 113 |     serve_static_file_from_s3(short_path, &state).await
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable
[INFO] [stdout]    --> src/routes/public.rs:33:11
[INFO] [stdout]     |
[INFO] [stdout]  33 |     path: impl Into<PathBuf> + Debug,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]    --> src/routes/public.rs:32:39
[INFO] [stdout]     |
[INFO] [stdout]  32 ~ pub async fn serve_static_file_from_s3<T: Into<PathBuf> + Debug>(
[INFO] [stdout]  33 ~     path: T,
[INFO] [stdout]  34 |     state: &VentState,
[INFO] [stdout]  35 ~ ) -> Result<impl IntoResponse + use<T>, VentError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0597]: `state` does not live long enough
[INFO] [stdout]    --> src/routes/images.rs:113:43
[INFO] [stdout]     |
[INFO] [stdout] 111 | async fn serve_image(Path(img_path): Path<String>, State(state): State<VentState>) -> Result<impl IntoResponse, VentError> {
[INFO] [stdout]     |                                                          -----                        ------------------------------------ return type of async function `Result<impl IntoResponse, VentError>` contains a lifetime `'1`
[INFO] [stdout]     |                                                          |
[INFO] [stdout]     |                                                          binding `state` declared here
[INFO] [stdout] 112 |     let short_path = format!("uploads/{img_path}");
[INFO] [stdout] 113 |     serve_static_file_from_s3(short_path, &state).await
[INFO] [stdout]     |     --------------------------------------^^^^^^-
[INFO] [stdout]     |     |                                     |
[INFO] [stdout]     |     |                                     borrowed value does not live long enough
[INFO] [stdout]     |     argument requires that `state` is borrowed for `'1`
[INFO] [stdout] 114 | }
[INFO] [stdout]     | - `state` dropped here while still borrowed
[INFO] [stdout]     |
[INFO] [stdout] note: this call may capture more lifetimes than intended, because Rust 2024 has adjusted the `impl Trait` lifetime capture rules
[INFO] [stdout]    --> src/routes/images.rs:113:5
[INFO] [stdout]     |
[INFO] [stdout] 113 |     serve_static_file_from_s3(short_path, &state).await
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable
[INFO] [stdout]    --> src/routes/public.rs:33:11
[INFO] [stdout]     |
[INFO] [stdout]  33 |     path: impl Into<PathBuf> + Debug,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]    --> src/routes/public.rs:32:39
[INFO] [stdout]     |
[INFO] [stdout]  32 ~ pub async fn serve_static_file_from_s3<T: Into<PathBuf> + Debug>(
[INFO] [stdout]  33 ~     path: T,
[INFO] [stdout]  34 |     state: &VentState,
[INFO] [stdout]  35 ~ ) -> Result<impl IntoResponse + use<T>, VentError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0597]: `state` does not live long enough
[INFO] [stdout]    --> src/routes/images.rs:209:42
[INFO] [stdout]     |
[INFO] [stdout] 119 |     State(state): State<VentState>,
[INFO] [stdout]     |           ----- binding `state` declared here
[INFO] [stdout] 120 | ) -> Result<impl IntoResponse, VentError> {
[INFO] [stdout]     |      ------------------------------------ return type of async function `Result<impl IntoResponse, VentError>` contains a lifetime `'1`
[INFO] [stdout] ...
[INFO] [stdout] 209 |     serve_static_file_from_s3(file_name, &state).await
[INFO] [stdout]     |     -------------------------------------^^^^^^-
[INFO] [stdout]     |     |                                    |
[INFO] [stdout]     |     |                                    borrowed value does not live long enough
[INFO] [stdout]     |     argument requires that `state` is borrowed for `'1`
[INFO] [stdout] 210 | }
[INFO] [stdout]     | - `state` dropped here while still borrowed
[INFO] [stdout]     |
[INFO] [stdout] note: this call may capture more lifetimes than intended, because Rust 2024 has adjusted the `impl Trait` lifetime capture rules
[INFO] [stdout]    --> src/routes/images.rs:209:5
[INFO] [stdout]     |
[INFO] [stdout] 209 |     serve_static_file_from_s3(file_name, &state).await
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable
[INFO] [stdout]    --> src/routes/public.rs:33:11
[INFO] [stdout]     |
[INFO] [stdout]  33 |     path: impl Into<PathBuf> + Debug,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]    --> src/routes/public.rs:32:39
[INFO] [stdout]     |
[INFO] [stdout]  32 ~ pub async fn serve_static_file_from_s3<T: Into<PathBuf> + Debug>(
[INFO] [stdout]  33 ~     path: T,
[INFO] [stdout]  34 |     state: &VentState,
[INFO] [stdout]  35 ~ ) -> Result<impl IntoResponse + use<T>, VentError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0597]: `state` does not live long enough
[INFO] [stdout]    --> src/routes/images.rs:209:42
[INFO] [stdout]     |
[INFO] [stdout] 119 |     State(state): State<VentState>,
[INFO] [stdout]     |           ----- binding `state` declared here
[INFO] [stdout] 120 | ) -> Result<impl IntoResponse, VentError> {
[INFO] [stdout]     |      ------------------------------------ return type of async function `Result<impl IntoResponse, VentError>` contains a lifetime `'1`
[INFO] [stdout] ...
[INFO] [stdout] 209 |     serve_static_file_from_s3(file_name, &state).await
[INFO] [stdout]     |     -------------------------------------^^^^^^-
[INFO] [stdout]     |     |                                    |
[INFO] [stdout]     |     |                                    borrowed value does not live long enough
[INFO] [stdout]     |     argument requires that `state` is borrowed for `'1`
[INFO] [stdout] 210 | }
[INFO] [stdout]     | - `state` dropped here while still borrowed
[INFO] [stdout]     |
[INFO] [stdout] note: this call may capture more lifetimes than intended, because Rust 2024 has adjusted the `impl Trait` lifetime capture rules
[INFO] [stdout]    --> src/routes/images.rs:209:5
[INFO] [stdout]     |
[INFO] [stdout] 209 |     serve_static_file_from_s3(file_name, &state).await
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable
[INFO] [stdout]    --> src/routes/public.rs:33:11
[INFO] [stdout]     |
[INFO] [stdout]  33 |     path: impl Into<PathBuf> + Debug,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]    --> src/routes/public.rs:32:39
[INFO] [stdout]     |
[INFO] [stdout]  32 ~ pub async fn serve_static_file_from_s3<T: Into<PathBuf> + Debug>(
[INFO] [stdout]  33 ~     path: T,
[INFO] [stdout]  34 |     state: &VentState,
[INFO] [stdout]  35 ~ ) -> Result<impl IntoResponse + use<T>, VentError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0597]: `state` does not live long enough
[INFO] [stdout]    --> src/routes/images.rs:209:42
[INFO] [stdout]     |
[INFO] [stdout] 119 |     State(state): State<VentState>,
[INFO] [stdout]     |           ----- binding `state` declared here
[INFO] [stdout] 120 | ) -> Result<impl IntoResponse, VentError> {
[INFO] [stdout]     |      ------------------------------------ return type of async function `Result<impl IntoResponse, VentError>` contains a lifetime `'1`
[INFO] [stdout] ...
[INFO] [stdout] 209 |     serve_static_file_from_s3(file_name, &state).await
[INFO] [stdout]     |     -------------------------------------^^^^^^-
[INFO] [stdout]     |     |                                    |
[INFO] [stdout]     |     |                                    borrowed value does not live long enough
[INFO] [stdout]     |     argument requires that `state` is borrowed for `'1`
[INFO] [stdout] 210 | }
[INFO] [stdout]     | - `state` dropped here while still borrowed
[INFO] [stdout]     |
[INFO] [stdout] note: this call may capture more lifetimes than intended, because Rust 2024 has adjusted the `impl Trait` lifetime capture rules
[INFO] [stdout]    --> src/routes/images.rs:209:5
[INFO] [stdout]     |
[INFO] [stdout] 209 |     serve_static_file_from_s3(file_name, &state).await
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable
[INFO] [stdout]    --> src/routes/public.rs:33:11
[INFO] [stdout]     |
[INFO] [stdout]  33 |     path: impl Into<PathBuf> + Debug,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]    --> src/routes/public.rs:32:39
[INFO] [stdout]     |
[INFO] [stdout]  32 ~ pub async fn serve_static_file_from_s3<T: Into<PathBuf> + Debug>(
[INFO] [stdout]  33 ~     path: T,
[INFO] [stdout]  34 |     state: &VentState,
[INFO] [stdout]  35 ~ ) -> Result<impl IntoResponse + use<T>, VentError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0597]: `state` does not live long enough
[INFO] [stdout]    --> src/routes/public.rs:112:46
[INFO] [stdout]     |
[INFO] [stdout] 111 |         pub async fn $func_name(State(state): State<VentState>) -> Result<impl IntoResponse, VentError> {
[INFO] [stdout]     |                                       -----                        ------------------------------------ return type of async function `Result<impl IntoResponse, VentError>` contains a lifetime `'1`
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       binding `state` declared here
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ---------------------------------^^^^^^-
[INFO] [stdout]     |             |                                |
[INFO] [stdout]     |             |                                borrowed value does not live long enough
[INFO] [stdout]     |             argument requires that `state` is borrowed for `'1`
[INFO] [stdout] 113 |         }
[INFO] [stdout]     |         - `state` dropped here while still borrowed
[INFO] [stdout] ...
[INFO] [stdout] 117 | get_x!(get_favicon, "public/favicon.ico");
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this call may capture more lifetimes than intended, because Rust 2024 has adjusted the `impl Trait` lifetime capture rules
[INFO] [stdout]    --> src/routes/public.rs:112:13
[INFO] [stdout]     |
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 | get_x!(get_favicon, "public/favicon.ico");
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable
[INFO] [stdout]    --> src/routes/public.rs:33:11
[INFO] [stdout]     |
[INFO] [stdout]  33 |     path: impl Into<PathBuf> + Debug,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the macro `get_x` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]     |
[INFO] [stdout]  32 ~ pub async fn serve_static_file_from_s3<T: Into<PathBuf> + Debug>(
[INFO] [stdout]  33 ~     path: T,
[INFO] [stdout]  34 |     state: &VentState,
[INFO] [stdout]  35 ~ ) -> Result<impl IntoResponse + use<T>, VentError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0597]: `state` does not live long enough
[INFO] [stdout]    --> src/routes/public.rs:112:46
[INFO] [stdout]     |
[INFO] [stdout] 111 |         pub async fn $func_name(State(state): State<VentState>) -> Result<impl IntoResponse, VentError> {
[INFO] [stdout]     |                                       -----                        ------------------------------------ return type of async function `Result<impl IntoResponse, VentError>` contains a lifetime `'1`
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       binding `state` declared here
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ---------------------------------^^^^^^-
[INFO] [stdout]     |             |                                |
[INFO] [stdout]     |             |                                borrowed value does not live long enough
[INFO] [stdout]     |             argument requires that `state` is borrowed for `'1`
[INFO] [stdout] 113 |         }
[INFO] [stdout]     |         - `state` dropped here while still borrowed
[INFO] [stdout] ...
[INFO] [stdout] 117 | get_x!(get_favicon, "public/favicon.ico");
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this call may capture more lifetimes than intended, because Rust 2024 has adjusted the `impl Trait` lifetime capture rules
[INFO] [stdout]    --> src/routes/public.rs:112:13
[INFO] [stdout]     |
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 | get_x!(get_favicon, "public/favicon.ico");
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable
[INFO] [stdout]    --> src/routes/public.rs:33:11
[INFO] [stdout]     |
[INFO] [stdout]  33 |     path: impl Into<PathBuf> + Debug,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the macro `get_x` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]     |
[INFO] [stdout]  32 ~ pub async fn serve_static_file_from_s3<T: Into<PathBuf> + Debug>(
[INFO] [stdout]  33 ~     path: T,
[INFO] [stdout]  34 |     state: &VentState,
[INFO] [stdout]  35 ~ ) -> Result<impl IntoResponse + use<T>, VentError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0597]: `state` does not live long enough
[INFO] [stdout]    --> src/routes/public.rs:112:46
[INFO] [stdout]     |
[INFO] [stdout] 111 |         pub async fn $func_name(State(state): State<VentState>) -> Result<impl IntoResponse, VentError> {
[INFO] [stdout]     |                                       -----                        ------------------------------------ return type of async function `Result<impl IntoResponse, VentError>` contains a lifetime `'1`
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       binding `state` declared here
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ---------------------------------^^^^^^-
[INFO] [stdout]     |             |                                |
[INFO] [stdout]     |             |                                borrowed value does not live long enough
[INFO] [stdout]     |             argument requires that `state` is borrowed for `'1`
[INFO] [stdout] 113 |         }
[INFO] [stdout]     |         - `state` dropped here while still borrowed
[INFO] [stdout] ...
[INFO] [stdout] 118 | get_x!(get_manifest, "public/manifest.json");
[INFO] [stdout]     | -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this call may capture more lifetimes than intended, because Rust 2024 has adjusted the `impl Trait` lifetime capture rules
[INFO] [stdout]    --> src/routes/public.rs:112:13
[INFO] [stdout]     |
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 118 | get_x!(get_manifest, "public/manifest.json");
[INFO] [stdout]     | -------------------------------------------- in this macro invocation
[INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable
[INFO] [stdout]    --> src/routes/public.rs:33:11
[INFO] [stdout]     |
[INFO] [stdout]  33 |     path: impl Into<PathBuf> + Debug,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the macro `get_x` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]     |
[INFO] [stdout]  32 ~ pub async fn serve_static_file_from_s3<T: Into<PathBuf> + Debug>(
[INFO] [stdout]  33 ~     path: T,
[INFO] [stdout]  34 |     state: &VentState,
[INFO] [stdout]  35 ~ ) -> Result<impl IntoResponse + use<T>, VentError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0597]: `state` does not live long enough
[INFO] [stdout]    --> src/routes/public.rs:112:46
[INFO] [stdout]     |
[INFO] [stdout] 111 |         pub async fn $func_name(State(state): State<VentState>) -> Result<impl IntoResponse, VentError> {
[INFO] [stdout]     |                                       -----                        ------------------------------------ return type of async function `Result<impl IntoResponse, VentError>` contains a lifetime `'1`
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       binding `state` declared here
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ---------------------------------^^^^^^-
[INFO] [stdout]     |             |                                |
[INFO] [stdout]     |             |                                borrowed value does not live long enough
[INFO] [stdout]     |             argument requires that `state` is borrowed for `'1`
[INFO] [stdout] 113 |         }
[INFO] [stdout]     |         - `state` dropped here while still borrowed
[INFO] [stdout] ...
[INFO] [stdout] 118 | get_x!(get_manifest, "public/manifest.json");
[INFO] [stdout]     | -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this call may capture more lifetimes than intended, because Rust 2024 has adjusted the `impl Trait` lifetime capture rules
[INFO] [stdout]    --> src/routes/public.rs:112:13
[INFO] [stdout]     |
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 118 | get_x!(get_manifest, "public/manifest.json");
[INFO] [stdout]     | -------------------------------------------- in this macro invocation
[INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable
[INFO] [stdout]    --> src/routes/public.rs:33:11
[INFO] [stdout]     |
[INFO] [stdout]  33 |     path: impl Into<PathBuf> + Debug,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the macro `get_x` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]     |
[INFO] [stdout]  32 ~ pub async fn serve_static_file_from_s3<T: Into<PathBuf> + Debug>(
[INFO] [stdout]  33 ~     path: T,
[INFO] [stdout]  34 |     state: &VentState,
[INFO] [stdout]  35 ~ ) -> Result<impl IntoResponse + use<T>, VentError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0597]: `state` does not live long enough
[INFO] [stdout]    --> src/routes/public.rs:112:46
[INFO] [stdout]     |
[INFO] [stdout] 111 |         pub async fn $func_name(State(state): State<VentState>) -> Result<impl IntoResponse, VentError> {
[INFO] [stdout]     |                                       -----                        ------------------------------------ return type of async function `Result<impl IntoResponse, VentError>` contains a lifetime `'1`
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       binding `state` declared here
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ---------------------------------^^^^^^-
[INFO] [stdout]     |             |                                |
[INFO] [stdout]     |             |                                borrowed value does not live long enough
[INFO] [stdout]     |             argument requires that `state` is borrowed for `'1`
[INFO] [stdout] 113 |         }
[INFO] [stdout]     |         - `state` dropped here while still borrowed
[INFO] [stdout] ...
[INFO] [stdout] 119 | get_x!(get_sw, "public/sw.js");
[INFO] [stdout]     | ------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this call may capture more lifetimes than intended, because Rust 2024 has adjusted the `impl Trait` lifetime capture rules
[INFO] [stdout]    --> src/routes/public.rs:112:13
[INFO] [stdout]     |
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 | get_x!(get_sw, "public/sw.js");
[INFO] [stdout]     | ------------------------------ in this macro invocation
[INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable
[INFO] [stdout]    --> src/routes/public.rs:33:11
[INFO] [stdout]     |
[INFO] [stdout]  33 |     path: impl Into<PathBuf> + Debug,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the macro `get_x` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]     |
[INFO] [stdout]  32 ~ pub async fn serve_static_file_from_s3<T: Into<PathBuf> + Debug>(
[INFO] [stdout]  33 ~     path: T,
[INFO] [stdout]  34 |     state: &VentState,
[INFO] [stdout]  35 ~ ) -> Result<impl IntoResponse + use<T>, VentError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0597]: `state` does not live long enough
[INFO] [stdout]    --> src/routes/public.rs:112:46
[INFO] [stdout]     |
[INFO] [stdout] 111 |         pub async fn $func_name(State(state): State<VentState>) -> Result<impl IntoResponse, VentError> {
[INFO] [stdout]     |                                       -----                        ------------------------------------ return type of async function `Result<impl IntoResponse, VentError>` contains a lifetime `'1`
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       binding `state` declared here
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ---------------------------------^^^^^^-
[INFO] [stdout]     |             |                                |
[INFO] [stdout]     |             |                                borrowed value does not live long enough
[INFO] [stdout]     |             argument requires that `state` is borrowed for `'1`
[INFO] [stdout] 113 |         }
[INFO] [stdout]     |         - `state` dropped here while still borrowed
[INFO] [stdout] ...
[INFO] [stdout] 119 | get_x!(get_sw, "public/sw.js");
[INFO] [stdout]     | ------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this call may capture more lifetimes than intended, because Rust 2024 has adjusted the `impl Trait` lifetime capture rules
[INFO] [stdout]    --> src/routes/public.rs:112:13
[INFO] [stdout]     |
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 | get_x!(get_sw, "public/sw.js");
[INFO] [stdout]     | ------------------------------ in this macro invocation
[INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable
[INFO] [stdout]    --> src/routes/public.rs:33:11
[INFO] [stdout]     |
[INFO] [stdout]  33 |     path: impl Into<PathBuf> + Debug,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the macro `get_x` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]     |
[INFO] [stdout]  32 ~ pub async fn serve_static_file_from_s3<T: Into<PathBuf> + Debug>(
[INFO] [stdout]  33 ~     path: T,
[INFO] [stdout]  34 |     state: &VentState,
[INFO] [stdout]  35 ~ ) -> Result<impl IntoResponse + use<T>, VentError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0597]: `state` does not live long enough
[INFO] [stdout]    --> src/routes/public.rs:112:46
[INFO] [stdout]     |
[INFO] [stdout] 111 |         pub async fn $func_name(State(state): State<VentState>) -> Result<impl IntoResponse, VentError> {
[INFO] [stdout]     |                                       -----                        ------------------------------------ return type of async function `Result<impl IntoResponse, VentError>` contains a lifetime `'1`
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       binding `state` declared here
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ---------------------------------^^^^^^-
[INFO] [stdout]     |             |                                |
[INFO] [stdout]     |             |                                borrowed value does not live long enough
[INFO] [stdout]     |             argument requires that `state` is borrowed for `'1`
[INFO] [stdout] 113 |         }
[INFO] [stdout]     |         - `state` dropped here while still borrowed
[INFO] [stdout] ...
[INFO] [stdout] 120 | get_x!(get_offline, "public/offline.html");
[INFO] [stdout]     | ------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this call may capture more lifetimes than intended, because Rust 2024 has adjusted the `impl Trait` lifetime capture rules
[INFO] [stdout]    --> src/routes/public.rs:112:13
[INFO] [stdout]     |
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 120 | get_x!(get_offline, "public/offline.html");
[INFO] [stdout]     | ------------------------------------------ in this macro invocation
[INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable
[INFO] [stdout]    --> src/routes/public.rs:33:11
[INFO] [stdout]     |
[INFO] [stdout]  33 |     path: impl Into<PathBuf> + Debug,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the macro `get_x` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]     |
[INFO] [stdout]  32 ~ pub async fn serve_static_file_from_s3<T: Into<PathBuf> + Debug>(
[INFO] [stdout]  33 ~     path: T,
[INFO] [stdout]  34 |     state: &VentState,
[INFO] [stdout]  35 ~ ) -> Result<impl IntoResponse + use<T>, VentError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0597]: `state` does not live long enough
[INFO] [stdout]    --> src/routes/public.rs:112:46
[INFO] [stdout]     |
[INFO] [stdout] 111 |         pub async fn $func_name(State(state): State<VentState>) -> Result<impl IntoResponse, VentError> {
[INFO] [stdout]     |                                       -----                        ------------------------------------ return type of async function `Result<impl IntoResponse, VentError>` contains a lifetime `'1`
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       binding `state` declared here
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ---------------------------------^^^^^^-
[INFO] [stdout]     |             |                                |
[INFO] [stdout]     |             |                                borrowed value does not live long enough
[INFO] [stdout]     |             argument requires that `state` is borrowed for `'1`
[INFO] [stdout] 113 |         }
[INFO] [stdout]     |         - `state` dropped here while still borrowed
[INFO] [stdout] ...
[INFO] [stdout] 120 | get_x!(get_offline, "public/offline.html");
[INFO] [stdout]     | ------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this call may capture more lifetimes than intended, because Rust 2024 has adjusted the `impl Trait` lifetime capture rules
[INFO] [stdout]    --> src/routes/public.rs:112:13
[INFO] [stdout]     |
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 120 | get_x!(get_offline, "public/offline.html");
[INFO] [stdout]     | ------------------------------------------ in this macro invocation
[INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable
[INFO] [stdout]    --> src/routes/public.rs:33:11
[INFO] [stdout]     |
[INFO] [stdout]  33 |     path: impl Into<PathBuf> + Debug,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the macro `get_x` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]     |
[INFO] [stdout]  32 ~ pub async fn serve_static_file_from_s3<T: Into<PathBuf> + Debug>(
[INFO] [stdout]  33 ~     path: T,
[INFO] [stdout]  34 |     state: &VentState,
[INFO] [stdout]  35 ~ ) -> Result<impl IntoResponse + use<T>, VentError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0597]: `state` does not live long enough
[INFO] [stdout]    --> src/routes/public.rs:112:46
[INFO] [stdout]     |
[INFO] [stdout] 111 |         pub async fn $func_name(State(state): State<VentState>) -> Result<impl IntoResponse, VentError> {
[INFO] [stdout]     |                                       -----                        ------------------------------------ return type of async function `Result<impl IntoResponse, VentError>` contains a lifetime `'1`
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       binding `state` declared here
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ---------------------------------^^^^^^-
[INFO] [stdout]     |             |                                |
[INFO] [stdout]     |             |                                borrowed value does not live long enough
[INFO] [stdout]     |             argument requires that `state` is borrowed for `'1`
[INFO] [stdout] 113 |         }
[INFO] [stdout]     |         - `state` dropped here while still borrowed
[INFO] [stdout] ...
[INFO] [stdout] 121 | get_x!(get_robots_txt, "public/robots.txt");
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this call may capture more lifetimes than intended, because Rust 2024 has adjusted the `impl Trait` lifetime capture rules
[INFO] [stdout]    --> src/routes/public.rs:112:13
[INFO] [stdout]     |
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 121 | get_x!(get_robots_txt, "public/robots.txt");
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable
[INFO] [stdout]    --> src/routes/public.rs:33:11
[INFO] [stdout]     |
[INFO] [stdout]  33 |     path: impl Into<PathBuf> + Debug,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the macro `get_x` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]     |
[INFO] [stdout]  32 ~ pub async fn serve_static_file_from_s3<T: Into<PathBuf> + Debug>(
[INFO] [stdout]  33 ~     path: T,
[INFO] [stdout]  34 |     state: &VentState,
[INFO] [stdout]  35 ~ ) -> Result<impl IntoResponse + use<T>, VentError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0597]: `state` does not live long enough
[INFO] [stdout]    --> src/routes/public.rs:112:46
[INFO] [stdout]     |
[INFO] [stdout] 111 |         pub async fn $func_name(State(state): State<VentState>) -> Result<impl IntoResponse, VentError> {
[INFO] [stdout]     |                                       -----                        ------------------------------------ return type of async function `Result<impl IntoResponse, VentError>` contains a lifetime `'1`
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       binding `state` declared here
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ---------------------------------^^^^^^-
[INFO] [stdout]     |             |                                |
[INFO] [stdout]     |             |                                borrowed value does not live long enough
[INFO] [stdout]     |             argument requires that `state` is borrowed for `'1`
[INFO] [stdout] 113 |         }
[INFO] [stdout]     |         - `state` dropped here while still borrowed
[INFO] [stdout] ...
[INFO] [stdout] 121 | get_x!(get_robots_txt, "public/robots.txt");
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this call may capture more lifetimes than intended, because Rust 2024 has adjusted the `impl Trait` lifetime capture rules
[INFO] [stdout]    --> src/routes/public.rs:112:13
[INFO] [stdout]     |
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 121 | get_x!(get_robots_txt, "public/robots.txt");
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable
[INFO] [stdout]    --> src/routes/public.rs:33:11
[INFO] [stdout]     |
[INFO] [stdout]  33 |     path: impl Into<PathBuf> + Debug,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the macro `get_x` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]     |
[INFO] [stdout]  32 ~ pub async fn serve_static_file_from_s3<T: Into<PathBuf> + Debug>(
[INFO] [stdout]  33 ~     path: T,
[INFO] [stdout]  34 |     state: &VentState,
[INFO] [stdout]  35 ~ ) -> Result<impl IntoResponse + use<T>, VentError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0597]: `state` does not live long enough
[INFO] [stdout]    --> src/routes/public.rs:112:46
[INFO] [stdout]     |
[INFO] [stdout] 111 |         pub async fn $func_name(State(state): State<VentState>) -> Result<impl IntoResponse, VentError> {
[INFO] [stdout]     |                                       -----                        ------------------------------------ return type of async function `Result<impl IntoResponse, VentError>` contains a lifetime `'1`
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       binding `state` declared here
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ---------------------------------^^^^^^-
[INFO] [stdout]     |             |                                |
[INFO] [stdout]     |             |                                borrowed value does not live long enough
[INFO] [stdout]     |             argument requires that `state` is borrowed for `'1`
[INFO] [stdout] 113 |         }
[INFO] [stdout]     |         - `state` dropped here while still borrowed
[INFO] [stdout] ...
[INFO] [stdout] 117 | get_x!(get_favicon, "public/favicon.ico");
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this call may capture more lifetimes than intended, because Rust 2024 has adjusted the `impl Trait` lifetime capture rules
[INFO] [stdout]    --> src/routes/public.rs:112:13
[INFO] [stdout]     |
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 | get_x!(get_favicon, "public/favicon.ico");
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable
[INFO] [stdout]    --> src/routes/public.rs:33:11
[INFO] [stdout]     |
[INFO] [stdout]  33 |     path: impl Into<PathBuf> + Debug,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the macro `get_x` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]     |
[INFO] [stdout]  32 ~ pub async fn serve_static_file_from_s3<T: Into<PathBuf> + Debug>(
[INFO] [stdout]  33 ~     path: T,
[INFO] [stdout]  34 |     state: &VentState,
[INFO] [stdout]  35 ~ ) -> Result<impl IntoResponse + use<T>, VentError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0597]: `state` does not live long enough
[INFO] [stdout]    --> src/routes/public.rs:112:46
[INFO] [stdout]     |
[INFO] [stdout] 111 |         pub async fn $func_name(State(state): State<VentState>) -> Result<impl IntoResponse, VentError> {
[INFO] [stdout]     |                                       -----                        ------------------------------------ return type of async function `Result<impl IntoResponse, VentError>` contains a lifetime `'1`
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       binding `state` declared here
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ---------------------------------^^^^^^-
[INFO] [stdout]     |             |                                |
[INFO] [stdout]     |             |                                borrowed value does not live long enough
[INFO] [stdout]     |             argument requires that `state` is borrowed for `'1`
[INFO] [stdout] 113 |         }
[INFO] [stdout]     |         - `state` dropped here while still borrowed
[INFO] [stdout] ...
[INFO] [stdout] 117 | get_x!(get_favicon, "public/favicon.ico");
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this call may capture more lifetimes than intended, because Rust 2024 has adjusted the `impl Trait` lifetime capture rules
[INFO] [stdout]    --> src/routes/public.rs:112:13
[INFO] [stdout]     |
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 | get_x!(get_favicon, "public/favicon.ico");
[INFO] [stdout]     | ----------------------------------------- in this macro invocation
[INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable
[INFO] [stdout]    --> src/routes/public.rs:33:11
[INFO] [stdout]     |
[INFO] [stdout]  33 |     path: impl Into<PathBuf> + Debug,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the macro `get_x` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]     |
[INFO] [stdout]  32 ~ pub async fn serve_static_file_from_s3<T: Into<PathBuf> + Debug>(
[INFO] [stdout]  33 ~     path: T,
[INFO] [stdout]  34 |     state: &VentState,
[INFO] [stdout]  35 ~ ) -> Result<impl IntoResponse + use<T>, VentError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0597]: `state` does not live long enough
[INFO] [stdout]    --> src/routes/public.rs:112:46
[INFO] [stdout]     |
[INFO] [stdout] 111 |         pub async fn $func_name(State(state): State<VentState>) -> Result<impl IntoResponse, VentError> {
[INFO] [stdout]     |                                       -----                        ------------------------------------ return type of async function `Result<impl IntoResponse, VentError>` contains a lifetime `'1`
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       binding `state` declared here
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ---------------------------------^^^^^^-
[INFO] [stdout]     |             |                                |
[INFO] [stdout]     |             |                                borrowed value does not live long enough
[INFO] [stdout]     |             argument requires that `state` is borrowed for `'1`
[INFO] [stdout] 113 |         }
[INFO] [stdout]     |         - `state` dropped here while still borrowed
[INFO] [stdout] ...
[INFO] [stdout] 118 | get_x!(get_manifest, "public/manifest.json");
[INFO] [stdout]     | -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this call may capture more lifetimes than intended, because Rust 2024 has adjusted the `impl Trait` lifetime capture rules
[INFO] [stdout]    --> src/routes/public.rs:112:13
[INFO] [stdout]     |
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 118 | get_x!(get_manifest, "public/manifest.json");
[INFO] [stdout]     | -------------------------------------------- in this macro invocation
[INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable
[INFO] [stdout]    --> src/routes/public.rs:33:11
[INFO] [stdout]     |
[INFO] [stdout]  33 |     path: impl Into<PathBuf> + Debug,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the macro `get_x` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]     |
[INFO] [stdout]  32 ~ pub async fn serve_static_file_from_s3<T: Into<PathBuf> + Debug>(
[INFO] [stdout]  33 ~     path: T,
[INFO] [stdout]  34 |     state: &VentState,
[INFO] [stdout]  35 ~ ) -> Result<impl IntoResponse + use<T>, VentError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0597]: `state` does not live long enough
[INFO] [stdout]    --> src/routes/public.rs:112:46
[INFO] [stdout]     |
[INFO] [stdout] 111 |         pub async fn $func_name(State(state): State<VentState>) -> Result<impl IntoResponse, VentError> {
[INFO] [stdout]     |                                       -----                        ------------------------------------ return type of async function `Result<impl IntoResponse, VentError>` contains a lifetime `'1`
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       binding `state` declared here
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ---------------------------------^^^^^^-
[INFO] [stdout]     |             |                                |
[INFO] [stdout]     |             |                                borrowed value does not live long enough
[INFO] [stdout]     |             argument requires that `state` is borrowed for `'1`
[INFO] [stdout] 113 |         }
[INFO] [stdout]     |         - `state` dropped here while still borrowed
[INFO] [stdout] ...
[INFO] [stdout] 118 | get_x!(get_manifest, "public/manifest.json");
[INFO] [stdout]     | -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this call may capture more lifetimes than intended, because Rust 2024 has adjusted the `impl Trait` lifetime capture rules
[INFO] [stdout]    --> src/routes/public.rs:112:13
[INFO] [stdout]     |
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 118 | get_x!(get_manifest, "public/manifest.json");
[INFO] [stdout]     | -------------------------------------------- in this macro invocation
[INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable
[INFO] [stdout]    --> src/routes/public.rs:33:11
[INFO] [stdout]     |
[INFO] [stdout]  33 |     path: impl Into<PathBuf> + Debug,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the macro `get_x` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]     |
[INFO] [stdout]  32 ~ pub async fn serve_static_file_from_s3<T: Into<PathBuf> + Debug>(
[INFO] [stdout]  33 ~     path: T,
[INFO] [stdout]  34 |     state: &VentState,
[INFO] [stdout]  35 ~ ) -> Result<impl IntoResponse + use<T>, VentError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0597]: `state` does not live long enough
[INFO] [stdout]    --> src/routes/public.rs:112:46
[INFO] [stdout]     |
[INFO] [stdout] 111 |         pub async fn $func_name(State(state): State<VentState>) -> Result<impl IntoResponse, VentError> {
[INFO] [stdout]     |                                       -----                        ------------------------------------ return type of async function `Result<impl IntoResponse, VentError>` contains a lifetime `'1`
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       binding `state` declared here
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ---------------------------------^^^^^^-
[INFO] [stdout]     |             |                                |
[INFO] [stdout]     |             |                                borrowed value does not live long enough
[INFO] [stdout]     |             argument requires that `state` is borrowed for `'1`
[INFO] [stdout] 113 |         }
[INFO] [stdout]     |         - `state` dropped here while still borrowed
[INFO] [stdout] ...
[INFO] [stdout] 119 | get_x!(get_sw, "public/sw.js");
[INFO] [stdout]     | ------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this call may capture more lifetimes than intended, because Rust 2024 has adjusted the `impl Trait` lifetime capture rules
[INFO] [stdout]    --> src/routes/public.rs:112:13
[INFO] [stdout]     |
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 | get_x!(get_sw, "public/sw.js");
[INFO] [stdout]     | ------------------------------ in this macro invocation
[INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable
[INFO] [stdout]    --> src/routes/public.rs:33:11
[INFO] [stdout]     |
[INFO] [stdout]  33 |     path: impl Into<PathBuf> + Debug,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the macro `get_x` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]     |
[INFO] [stdout]  32 ~ pub async fn serve_static_file_from_s3<T: Into<PathBuf> + Debug>(
[INFO] [stdout]  33 ~     path: T,
[INFO] [stdout]  34 |     state: &VentState,
[INFO] [stdout]  35 ~ ) -> Result<impl IntoResponse + use<T>, VentError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0597]: `state` does not live long enough
[INFO] [stdout]    --> src/routes/public.rs:112:46
[INFO] [stdout]     |
[INFO] [stdout] 111 |         pub async fn $func_name(State(state): State<VentState>) -> Result<impl IntoResponse, VentError> {
[INFO] [stdout]     |                                       -----                        ------------------------------------ return type of async function `Result<impl IntoResponse, VentError>` contains a lifetime `'1`
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       binding `state` declared here
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ---------------------------------^^^^^^-
[INFO] [stdout]     |             |                                |
[INFO] [stdout]     |             |                                borrowed value does not live long enough
[INFO] [stdout]     |             argument requires that `state` is borrowed for `'1`
[INFO] [stdout] 113 |         }
[INFO] [stdout]     |         - `state` dropped here while still borrowed
[INFO] [stdout] ...
[INFO] [stdout] 119 | get_x!(get_sw, "public/sw.js");
[INFO] [stdout]     | ------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this call may capture more lifetimes than intended, because Rust 2024 has adjusted the `impl Trait` lifetime capture rules
[INFO] [stdout]    --> src/routes/public.rs:112:13
[INFO] [stdout]     |
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 | get_x!(get_sw, "public/sw.js");
[INFO] [stdout]     | ------------------------------ in this macro invocation
[INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable
[INFO] [stdout]    --> src/routes/public.rs:33:11
[INFO] [stdout]     |
[INFO] [stdout]  33 |     path: impl Into<PathBuf> + Debug,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the macro `get_x` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]     |
[INFO] [stdout]  32 ~ pub async fn serve_static_file_from_s3<T: Into<PathBuf> + Debug>(
[INFO] [stdout]  33 ~     path: T,
[INFO] [stdout]  34 |     state: &VentState,
[INFO] [stdout]  35 ~ ) -> Result<impl IntoResponse + use<T>, VentError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0597]: `state` does not live long enough
[INFO] [stdout]    --> src/routes/public.rs:112:46
[INFO] [stdout]     |
[INFO] [stdout] 111 |         pub async fn $func_name(State(state): State<VentState>) -> Result<impl IntoResponse, VentError> {
[INFO] [stdout]     |                                       -----                        ------------------------------------ return type of async function `Result<impl IntoResponse, VentError>` contains a lifetime `'1`
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       binding `state` declared here
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ---------------------------------^^^^^^-
[INFO] [stdout]     |             |                                |
[INFO] [stdout]     |             |                                borrowed value does not live long enough
[INFO] [stdout]     |             argument requires that `state` is borrowed for `'1`
[INFO] [stdout] 113 |         }
[INFO] [stdout]     |         - `state` dropped here while still borrowed
[INFO] [stdout] ...
[INFO] [stdout] 120 | get_x!(get_offline, "public/offline.html");
[INFO] [stdout]     | ------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this call may capture more lifetimes than intended, because Rust 2024 has adjusted the `impl Trait` lifetime capture rules
[INFO] [stdout]    --> src/routes/public.rs:112:13
[INFO] [stdout]     |
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 120 | get_x!(get_offline, "public/offline.html");
[INFO] [stdout]     | ------------------------------------------ in this macro invocation
[INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable
[INFO] [stdout]    --> src/routes/public.rs:33:11
[INFO] [stdout]     |
[INFO] [stdout]  33 |     path: impl Into<PathBuf> + Debug,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the macro `get_x` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]     |
[INFO] [stdout]  32 ~ pub async fn serve_static_file_from_s3<T: Into<PathBuf> + Debug>(
[INFO] [stdout]  33 ~     path: T,
[INFO] [stdout]  34 |     state: &VentState,
[INFO] [stdout]  35 ~ ) -> Result<impl IntoResponse + use<T>, VentError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0597]: `state` does not live long enough
[INFO] [stdout]    --> src/routes/public.rs:112:46
[INFO] [stdout]     |
[INFO] [stdout] 111 |         pub async fn $func_name(State(state): State<VentState>) -> Result<impl IntoResponse, VentError> {
[INFO] [stdout]     |                                       -----                        ------------------------------------ return type of async function `Result<impl IntoResponse, VentError>` contains a lifetime `'1`
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       binding `state` declared here
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ---------------------------------^^^^^^-
[INFO] [stdout]     |             |                                |
[INFO] [stdout]     |             |                                borrowed value does not live long enough
[INFO] [stdout]     |             argument requires that `state` is borrowed for `'1`
[INFO] [stdout] 113 |         }
[INFO] [stdout]     |         - `state` dropped here while still borrowed
[INFO] [stdout] ...
[INFO] [stdout] 120 | get_x!(get_offline, "public/offline.html");
[INFO] [stdout]     | ------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this call may capture more lifetimes than intended, because Rust 2024 has adjusted the `impl Trait` lifetime capture rules
[INFO] [stdout]    --> src/routes/public.rs:112:13
[INFO] [stdout]     |
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 120 | get_x!(get_offline, "public/offline.html");
[INFO] [stdout]     | ------------------------------------------ in this macro invocation
[INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable
[INFO] [stdout]    --> src/routes/public.rs:33:11
[INFO] [stdout]     |
[INFO] [stdout]  33 |     path: impl Into<PathBuf> + Debug,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the macro `get_x` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]     |
[INFO] [stdout]  32 ~ pub async fn serve_static_file_from_s3<T: Into<PathBuf> + Debug>(
[INFO] [stdout]  33 ~     path: T,
[INFO] [stdout]  34 |     state: &VentState,
[INFO] [stdout]  35 ~ ) -> Result<impl IntoResponse + use<T>, VentError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0597]: `state` does not live long enough
[INFO] [stdout]    --> src/routes/public.rs:112:46
[INFO] [stdout]     |
[INFO] [stdout] 111 |         pub async fn $func_name(State(state): State<VentState>) -> Result<impl IntoResponse, VentError> {
[INFO] [stdout]     |                                       -----                        ------------------------------------ return type of async function `Result<impl IntoResponse, VentError>` contains a lifetime `'1`
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       binding `state` declared here
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ---------------------------------^^^^^^-
[INFO] [stdout]     |             |                                |
[INFO] [stdout]     |             |                                borrowed value does not live long enough
[INFO] [stdout]     |             argument requires that `state` is borrowed for `'1`
[INFO] [stdout] 113 |         }
[INFO] [stdout]     |         - `state` dropped here while still borrowed
[INFO] [stdout] ...
[INFO] [stdout] 121 | get_x!(get_robots_txt, "public/robots.txt");
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this call may capture more lifetimes than intended, because Rust 2024 has adjusted the `impl Trait` lifetime capture rules
[INFO] [stdout]    --> src/routes/public.rs:112:13
[INFO] [stdout]     |
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 121 | get_x!(get_robots_txt, "public/robots.txt");
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable
[INFO] [stdout]    --> src/routes/public.rs:33:11
[INFO] [stdout]     |
[INFO] [stdout]  33 |     path: impl Into<PathBuf> + Debug,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the macro `get_x` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]     |
[INFO] [stdout]  32 ~ pub async fn serve_static_file_from_s3<T: Into<PathBuf> + Debug>(
[INFO] [stdout]  33 ~     path: T,
[INFO] [stdout]  34 |     state: &VentState,
[INFO] [stdout]  35 ~ ) -> Result<impl IntoResponse + use<T>, VentError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0597]: `state` does not live long enough
[INFO] [stdout]    --> src/routes/public.rs:112:46
[INFO] [stdout]     |
[INFO] [stdout] 111 |         pub async fn $func_name(State(state): State<VentState>) -> Result<impl IntoResponse, VentError> {
[INFO] [stdout]     |                                       -----                        ------------------------------------ return type of async function `Result<impl IntoResponse, VentError>` contains a lifetime `'1`
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       binding `state` declared here
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ---------------------------------^^^^^^-
[INFO] [stdout]     |             |                                |
[INFO] [stdout]     |             |                                borrowed value does not live long enough
[INFO] [stdout]     |             argument requires that `state` is borrowed for `'1`
[INFO] [stdout] 113 |         }
[INFO] [stdout]     |         - `state` dropped here while still borrowed
[INFO] [stdout] ...
[INFO] [stdout] 121 | get_x!(get_robots_txt, "public/robots.txt");
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: this call may capture more lifetimes than intended, because Rust 2024 has adjusted the `impl Trait` lifetime capture rules
[INFO] [stdout]    --> src/routes/public.rs:112:13
[INFO] [stdout]     |
[INFO] [stdout] 112 |             serve_static_file_from_s3($path, &state).await
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 121 | get_x!(get_robots_txt, "public/robots.txt");
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable
[INFO] [stdout]    --> src/routes/public.rs:33:11
[INFO] [stdout]     |
[INFO] [stdout]  33 |     path: impl Into<PathBuf> + Debug,
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: this error originates in the macro `get_x` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]     |
[INFO] [stdout]  32 ~ pub async fn serve_static_file_from_s3<T: Into<PathBuf> + Debug>(
[INFO] [stdout]  33 ~     path: T,
[INFO] [stdout]  34 |     state: &VentState,
[INFO] [stdout]  35 ~ ) -> Result<impl IntoResponse + use<T>, VentError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0597`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `vent` (bin "vent" test) due to 14 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] For more information about this error, try `rustc --explain E0597`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `vent` (bin "vent") due to 14 previous errors
[INFO] running `Command { std: "docker" "inspect" "ddbc00aaea9f3cc94d1ee1ab4bba0a1bbc31d8218397230221759cc26bc36017", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ddbc00aaea9f3cc94d1ee1ab4bba0a1bbc31d8218397230221759cc26bc36017", kill_on_drop: false }`
[INFO] [stdout] ddbc00aaea9f3cc94d1ee1ab4bba0a1bbc31d8218397230221759cc26bc36017
